Writes adb_mode flag to new config

Test: local run
Change-Id: I024df3fe0730401d6b65eba2b3a67703b35e2480
Merged-In: I024df3fe0730401d6b65eba2b3a67703b35e2480
(cherry picked from commit 4a1abea66a8321f27cf4a0fdce23d4ba48965b8a)
diff --git a/host/commands/launch/main.cc b/host/commands/launch/main.cc
index 0b10ff8..981e8e2 100644
--- a/host/commands/launch/main.cc
+++ b/host/commands/launch/main.cc
@@ -486,6 +486,8 @@
   config->set_y_res(FLAGS_y_res);
   config->set_refresh_rate_hz(FLAGS_refresh_rate_hz);
 
+  config->set_adb_mode(FLAGS_adb_mode);
+
   if (FLAGS_kernel_path.size()) {
     config->set_kernel_image_path(FLAGS_kernel_path);
   } else {
diff --git a/host/libs/config/cuttlefish_config.cpp b/host/libs/config/cuttlefish_config.cpp
index 18a17f3..82aa432 100644
--- a/host/libs/config/cuttlefish_config.cpp
+++ b/host/libs/config/cuttlefish_config.cpp
@@ -109,6 +109,8 @@
 const char* kDisableDacSecurity = "disable_dac_security";
 const char* kDisableAppArmorSecurity = "disable_app_armor_security";
 const char* kCuttlefishEnvPath = "cuttlefish_env_path";
+
+const char* kAdbMode = "adb_mode";
 }  // namespace
 
 namespace vsoc {
@@ -371,6 +373,14 @@
   (*dictionary_)[kDisableAppArmorSecurity] = disable_app_armor_security;
 }
 
+std::string CuttlefishConfig::adb_mode() const {
+  return (*dictionary_)[kAdbMode].asString();
+}
+
+void CuttlefishConfig::set_adb_mode(const std::string& mode) {
+  (*dictionary_)[kAdbMode] = mode;
+}
+
 /*static*/ CuttlefishConfig* CuttlefishConfig::Get() {
   static CuttlefishConfig config;
   return &config;
diff --git a/host/libs/config/cuttlefish_config.h b/host/libs/config/cuttlefish_config.h
index e5f7817..e8e1a44 100644
--- a/host/libs/config/cuttlefish_config.h
+++ b/host/libs/config/cuttlefish_config.h
@@ -159,6 +159,9 @@
   void set_cuttlefish_env_path(const std::string& path);
   std::string cuttlefish_env_path() const;
 
+  void set_adb_mode(const std::string& mode);
+  std::string adb_mode() const;
+
  private:
   std::unique_ptr<Json::Value> dictionary_;