Move StringPool to libandroidfw

Test: verified affected tests pass
Bug: 232940948
Change-Id: I22089893d7e5013f759c39ce190bec07fa6435db
diff --git a/tools/aapt2/optimize/MultiApkGenerator.cpp b/tools/aapt2/optimize/MultiApkGenerator.cpp
index c686a10..f994e27 100644
--- a/tools/aapt2/optimize/MultiApkGenerator.cpp
+++ b/tools/aapt2/optimize/MultiApkGenerator.cpp
@@ -65,7 +65,7 @@
     return context_->GetExternalSymbols();
   }
 
-  IDiagnostics* GetDiagnostics() override {
+  android::IDiagnostics* GetDiagnostics() override {
     if (source_diag_) {
       return source_diag_.get();
     }
@@ -97,8 +97,8 @@
   }
 
   void SetSource(const std::string& source) {
-    source_diag_ =
-        util::make_unique<SourcePathDiagnostics>(Source{source}, context_->GetDiagnostics());
+    source_diag_ = util::make_unique<android::SourcePathDiagnostics>(android::Source{source},
+                                                                     context_->GetDiagnostics());
   }
 
   const std::set<std::string>& GetSplitNameDependencies() override {
@@ -107,7 +107,7 @@
 
  private:
   IAaptContext* context_;
-  std::unique_ptr<SourcePathDiagnostics> source_diag_;
+  std::unique_ptr<android::SourcePathDiagnostics> source_diag_;
 
   int min_sdk_ = -1;
 };
@@ -143,7 +143,8 @@
       if (it == artifacts_to_keep.end()) {
         filtered_artifacts.insert(artifact.name);
         if (context_->IsVerbose()) {
-          context_->GetDiagnostics()->Note(DiagMessage(artifact.name) << "skipping artifact");
+          context_->GetDiagnostics()->Note(android::DiagMessage(artifact.name)
+                                           << "skipping artifact");
         }
         continue;
       } else {
@@ -158,28 +159,29 @@
       return false;
     }
 
-    IDiagnostics* diag = wrapped_context.GetDiagnostics();
+    android::IDiagnostics* diag = wrapped_context.GetDiagnostics();
 
     std::unique_ptr<XmlResource> manifest;
     if (!UpdateManifest(artifact, &manifest, diag)) {
-      diag->Error(DiagMessage() << "could not update AndroidManifest.xml for output artifact");
+      diag->Error(android::DiagMessage()
+                  << "could not update AndroidManifest.xml for output artifact");
       return false;
     }
 
     std::string out = options.out_dir;
     if (!file::mkdirs(out)) {
-      diag->Warn(DiagMessage() << "could not create out dir: " << out);
+      diag->Warn(android::DiagMessage() << "could not create out dir: " << out);
     }
     file::AppendPath(&out, artifact.name);
 
     if (context_->IsVerbose()) {
-      diag->Note(DiagMessage() << "Generating split: " << out);
+      diag->Note(android::DiagMessage() << "Generating split: " << out);
     }
 
     std::unique_ptr<IArchiveWriter> writer = CreateZipFileArchiveWriter(diag, out);
 
     if (context_->IsVerbose()) {
-      diag->Note(DiagMessage() << "Writing output: " << out);
+      diag->Note(android::DiagMessage() << "Writing output: " << out);
     }
 
     filters.AddFilter(util::make_unique<SignatureFilter>());
@@ -192,22 +194,25 @@
   // Make sure all of the requested artifacts were valid. If there are any kept artifacts left,
   // either the config or the command line was wrong.
   if (!artifacts_to_keep.empty()) {
-    context_->GetDiagnostics()->Error(
-        DiagMessage() << "The configuration and command line to filter artifacts do not match");
+    context_->GetDiagnostics()
+        ->Error(android::DiagMessage()
+                << "The configuration and command line to filter artifacts do not match");
 
-    context_->GetDiagnostics()->Error(DiagMessage() << kept_artifacts.size() << " kept:");
+    context_->GetDiagnostics()->Error(android::DiagMessage() << kept_artifacts.size() << " kept:");
     for (const auto& artifact : kept_artifacts) {
-      context_->GetDiagnostics()->Error(DiagMessage() << "  " << artifact);
+      context_->GetDiagnostics()->Error(android::DiagMessage() << "  " << artifact);
     }
 
-    context_->GetDiagnostics()->Error(DiagMessage() << filtered_artifacts.size() << " filtered:");
+    context_->GetDiagnostics()->Error(android::DiagMessage()
+                                      << filtered_artifacts.size() << " filtered:");
     for (const auto& artifact : filtered_artifacts) {
-      context_->GetDiagnostics()->Error(DiagMessage() << "  " << artifact);
+      context_->GetDiagnostics()->Error(android::DiagMessage() << "  " << artifact);
     }
 
-    context_->GetDiagnostics()->Error(DiagMessage() << artifacts_to_keep.size() << " missing:");
+    context_->GetDiagnostics()->Error(android::DiagMessage()
+                                      << artifacts_to_keep.size() << " missing:");
     for (const auto& artifact : artifacts_to_keep) {
-      context_->GetDiagnostics()->Error(DiagMessage() << "  " << artifact);
+      context_->GetDiagnostics()->Error(android::DiagMessage() << "  " << artifact);
     }
 
     return false;
@@ -250,7 +255,8 @@
 
   VersionCollapser collapser;
   if (!collapser.Consume(&wrapped_context, table.get())) {
-    context->GetDiagnostics()->Error(DiagMessage() << "Failed to strip versioned resources");
+    context->GetDiagnostics()->Error(android::DiagMessage()
+                                     << "Failed to strip versioned resources");
     return {};
   }
 
@@ -261,7 +267,7 @@
 
 bool MultiApkGenerator::UpdateManifest(const OutputArtifact& artifact,
                                        std::unique_ptr<XmlResource>* updated_manifest,
-                                       IDiagnostics* diag) {
+                                       android::IDiagnostics* diag) {
   const xml::XmlResource* apk_manifest = apk_->GetManifest();
   if (apk_manifest == nullptr) {
     return false;
@@ -277,20 +283,21 @@
   }
 
   if (!manifest_el->namespace_uri.empty() || manifest_el->name != "manifest") {
-    diag->Error(DiagMessage(manifest->file.source) << "root tag must be <manifest>");
+    diag->Error(android::DiagMessage(manifest->file.source) << "root tag must be <manifest>");
     return false;
   }
 
   // Retrieve the versionCode attribute.
   auto version_code = manifest_el->FindAttribute(kSchemaAndroid, "versionCode");
   if (!version_code) {
-    diag->Error(DiagMessage(manifest->file.source) << "manifest must have a versionCode attribute");
+    diag->Error(android::DiagMessage(manifest->file.source)
+                << "manifest must have a versionCode attribute");
     return false;
   }
 
   auto version_code_value = ValueCast<BinaryPrimitive>(version_code->compiled_value.get());
   if (!version_code_value) {
-    diag->Error(DiagMessage(manifest->file.source) << "versionCode is invalid");
+    diag->Error(android::DiagMessage(manifest->file.source) << "versionCode is invalid");
     return false;
   }
 
@@ -300,7 +307,7 @@
   if (version_code_major) {
     version_code_major_value = ValueCast<BinaryPrimitive>(version_code_major->compiled_value.get());
     if (!version_code_major_value) {
-      diag->Error(DiagMessage(manifest->file.source) << "versionCodeMajor is invalid");
+      diag->Error(android::DiagMessage(manifest->file.source) << "versionCodeMajor is invalid");
       return false;
     }
   }
@@ -325,13 +332,15 @@
       } else {
         // There was no minSdkVersion. This is strange since at this point we should have been
         // through the manifest fixer which sets the default minSdkVersion.
-        diag->Error(DiagMessage(manifest->file.source) << "missing minSdkVersion from <uses-sdk>");
+        diag->Error(android::DiagMessage(manifest->file.source)
+                    << "missing minSdkVersion from <uses-sdk>");
         return false;
       }
     } else {
       // No uses-sdk present. This is strange since at this point we should have been
       // through the manifest fixer which should have added it.
-      diag->Error(DiagMessage(manifest->file.source) << "missing <uses-sdk> from <manifest>");
+      diag->Error(android::DiagMessage(manifest->file.source)
+                  << "missing <uses-sdk> from <manifest>");
       return false;
     }
   }