X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fandroidmanifestgenerator.cpp;h=0c489825824784a6af316572406a1d338a256691;hb=40ab4f61eaf7fc14fc6d1c2ea5eecee21882893a;hp=a7cda0428dea4ce95954fbccd1cb2ca6ea347358;hpb=e3ba0e44173bd373d1111fc6d87fc4e61faebf9f;p=builder.git diff --git a/source/androidmanifestgenerator.cpp b/source/androidmanifestgenerator.cpp index a7cda04..0c48982 100644 --- a/source/androidmanifestgenerator.cpp +++ b/source/androidmanifestgenerator.cpp @@ -3,6 +3,7 @@ #include "androidmanifestfile.h" #include "androidmanifestgenerator.h" #include "component.h" +#include "internaltask.h" #include "sharedlibrary.h" #include "sourcepackage.h" @@ -11,26 +12,16 @@ using namespace Msp; AndroidManifestGenerator::AndroidManifestGenerator(Builder &b): Tool(b, "AMG") -{ } - -Target *AndroidManifestGenerator::create_target(const list &, const string &) { - throw logic_error("not implemented"); + set_run_internal(_run); } -Task *AndroidManifestGenerator::run(const Target &target) const +Target *AndroidManifestGenerator::create_target(const vector &, const string &) { - const AndroidManifestFile &manifest = dynamic_cast(target); - Worker *worker = new Worker(manifest); - return new InternalTask(worker); + throw logic_error("not implemented"); } - -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(); @@ -60,10 +51,9 @@ void AndroidManifestGenerator::Worker::main() out.write("\t\t\n"); } out.write("\t\n"); - const set &permissions = manifest.get_permissions(); - for(set::const_iterator i=permissions.begin(); i!=permissions.end(); ++i) - IO::print(out, "\t\n", *i); + for(const string &p: manifest.get_permissions()) + IO::print(out, "\t\n", p); out.write("\n"); - status = Task::SUCCESS; + return true; }