X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fandroidmanifestgenerator.cpp;h=70b1e20754d06d2b72db97a070894b8a3c571c41;hb=d1eb133ab529cdae131be7b150209f03189248f3;hp=b9d67dfb3201dc83317e9fa0cd83e71c4aac86c2;hpb=aa053d637e8259755af7d2e4b510a242f4d29c7b;p=builder.git diff --git a/source/androidmanifestgenerator.cpp b/source/androidmanifestgenerator.cpp index b9d67df..70b1e20 100644 --- a/source/androidmanifestgenerator.cpp +++ b/source/androidmanifestgenerator.cpp @@ -3,16 +3,13 @@ #include "androidmanifestfile.h" #include "androidmanifestgenerator.h" #include "component.h" +#include "internaltask.h" #include "sharedlibrary.h" #include "sourcepackage.h" using namespace std; using namespace Msp; -AndroidManifestGenerator::AndroidManifestGenerator(Builder &b): - Tool(b, "AMG") -{ } - Target *AndroidManifestGenerator::create_target(const vector &, const string &) { throw logic_error("not implemented"); @@ -21,16 +18,10 @@ Target *AndroidManifestGenerator::create_target(const vector &, const Task *AndroidManifestGenerator::run(const Target &target) const { const AndroidManifestFile &manifest = dynamic_cast(target); - Worker *worker = new Worker(manifest); - return new InternalTask(worker); + return new InternalTask([&manifest]{ return _run(manifest); }); } - -AndroidManifestGenerator::Worker::Worker(const AndroidManifestFile &m): - manifest(m) -{ } - -void AndroidManifestGenerator::Worker::main() +bool AndroidManifestGenerator::_run(const AndroidManifestFile &manifest) { const Component &comp = *manifest.get_component(); const SourcePackage &pkg = comp.get_package(); @@ -64,5 +55,5 @@ void AndroidManifestGenerator::Worker::main() IO::print(out, "\t\n", p); out.write("\n"); - status = Task::SUCCESS; + return true; }