Remove *base* methods from config_store.h

This information should be the same for all weave devices.

BUG:24267885
Change-Id: Ia396d856e6e15f18db9ceacba05e90b34c474205
Reviewed-on: https://weave-review.googlesource.com/1205
Reviewed-by: Vitaly Buka <vitalybuka@google.com>
diff --git a/libweave/examples/ubuntu/file_config_store.cc b/libweave/examples/ubuntu/file_config_store.cc
index 8cc8fc5..8853bcf 100644
--- a/libweave/examples/ubuntu/file_config_store.cc
+++ b/libweave/examples/ubuntu/file_config_store.cc
@@ -59,36 +59,6 @@
   str << settings;
 }
 
-std::string FileConfigStore::LoadBaseCommandDefs() {
-  return R"({
-    "base": {
-      "updateBaseConfiguration": {
-        "minimalRole": "manager",
-        "parameters": {
-          "localDiscoveryEnabled": "boolean",
-          "localAnonymousAccessMaxRole": [ "none", "viewer", "user" ],
-          "localPairingEnabled": "boolean"
-        },
-        "results": {}
-      },
-      "identify": {
-        "minimalRole": "user",
-        "parameters": {},
-        "results": {}
-      },
-      "updateDeviceInfo": {
-        "minimalRole": "manager",
-        "parameters": {
-          "description": "string",
-          "name": "string",
-          "location": "string"
-        },
-        "results": {}
-      }
-    }
-  })";
-}
-
 std::map<std::string, std::string> FileConfigStore::LoadCommandDefs() {
   return {{"example", R"({
     "base": {
@@ -106,33 +76,6 @@
   })"}};
 }
 
-std::string FileConfigStore::LoadBaseStateDefs() {
-  return R"({
-    "base": {
-      "firmwareVersion": "string",
-      "localDiscoveryEnabled": "boolean",
-      "localAnonymousAccessMaxRole": [ "none", "viewer", "user" ],
-      "localPairingEnabled": "boolean",
-      "network": {
-        "properties": {
-          "name": "string"
-        }
-      }
-    }
-  })";
-}
-
-std::string FileConfigStore::LoadBaseStateDefaults() {
-  return R"({
-    "base": {
-      "firmwareVersion": "unknown",
-      "localDiscoveryEnabled": false,
-      "localAnonymousAccessMaxRole": "none",
-      "localPairingEnabled": false
-    }
-  })";
-}
-
 std::map<std::string, std::string> FileConfigStore::LoadStateDefs() {
   return {};
 }
diff --git a/libweave/examples/ubuntu/file_config_store.h b/libweave/examples/ubuntu/file_config_store.h
index aa1d4fe..f89636d 100644
--- a/libweave/examples/ubuntu/file_config_store.h
+++ b/libweave/examples/ubuntu/file_config_store.h
@@ -21,10 +21,7 @@
   bool LoadDefaults(Settings* settings) override;
   std::string LoadSettings() override;
   void SaveSettings(const std::string& settings) override;
-  std::string LoadBaseCommandDefs() override;
   std::map<std::string, std::string> LoadCommandDefs() override;
-  std::string LoadBaseStateDefs() override;
-  std::string LoadBaseStateDefaults() override;
   std::map<std::string, std::string> LoadStateDefs() override;
   std::vector<std::string> LoadStateDefaults() override;
 
diff --git a/libweave/include/weave/provider/config_store.h b/libweave/include/weave/provider/config_store.h
index d073ca7..30f289c 100644
--- a/libweave/include/weave/provider/config_store.h
+++ b/libweave/include/weave/provider/config_store.h
@@ -35,11 +35,10 @@
   // recommended to protect data, e.g. using encryption.
   virtual void SaveSettings(const std::string& settings) = 0;
 
-  virtual std::string LoadBaseCommandDefs() = 0;
-  virtual std::string LoadBaseStateDefs() = 0;
-  virtual std::string LoadBaseStateDefaults() = 0;
-
   // Returns command definitions as JSON.
+  // Key is unique string which will be used to assign single command handler
+  // later.
+  // Value is JSON with command definition.
   virtual std::map<std::string, std::string> LoadCommandDefs() = 0;
 
   // Returns device state definitions as JSON.
diff --git a/libweave/include/weave/provider/test/mock_config_store.h b/libweave/include/weave/provider/test/mock_config_store.h
index 1a287ee..872e666 100644
--- a/libweave/include/weave/provider/test/mock_config_store.h
+++ b/libweave/include/weave/provider/test/mock_config_store.h
@@ -41,12 +41,7 @@
   MOCK_METHOD0(LoadSettings, std::string());
   MOCK_METHOD1(SaveSettings, void(const std::string&));
 
-  MOCK_METHOD0(LoadBaseCommandDefs, std::string());
   MOCK_METHOD0(LoadCommandDefs, std::map<std::string, std::string>());
-
-  MOCK_METHOD0(LoadBaseStateDefs, std::string());
-  MOCK_METHOD0(LoadBaseStateDefaults, std::string());
-
   MOCK_METHOD0(LoadStateDefs, std::map<std::string, std::string>());
   MOCK_METHOD0(LoadStateDefaults, std::vector<std::string>());
 };
diff --git a/libweave/src/commands/command_manager.cc b/libweave/src/commands/command_manager.cc
index f1ff3d0..95ca291 100644
--- a/libweave/src/commands/command_manager.cc
+++ b/libweave/src/commands/command_manager.cc
@@ -14,6 +14,43 @@
 
 namespace weave {
 
+namespace {
+
+const char kBaseCommandDefs[] = R"({
+  "base": {
+    "updateBaseConfiguration": {
+      "minimalRole": "manager",
+      "parameters": {
+        "localDiscoveryEnabled": "boolean",
+        "localAnonymousAccessMaxRole": [ "none", "viewer", "user" ],
+        "localPairingEnabled": "boolean"
+      },
+      "results": {}
+    },
+    "reboot": {
+      "minimalRole": "user",
+      "parameters": {},
+      "results": {}
+    },
+    "identify": {
+      "minimalRole": "user",
+      "parameters": {},
+      "results": {}
+    },
+    "updateDeviceInfo": {
+      "minimalRole": "manager",
+      "parameters": {
+        "description": "string",
+        "name": "string",
+        "location": "string"
+      },
+      "results": {}
+    }
+  }
+})";
+
+}
+
 CommandManager::CommandManager() {}
 
 CommandManager::~CommandManager() {}
@@ -63,7 +100,7 @@
   LOG(INFO) << "Initializing CommandManager.";
 
   // Load global standard GCD command dictionary.
-  CHECK(LoadBaseCommands(config_store->LoadBaseCommandDefs(), nullptr));
+  CHECK(LoadBaseCommands(kBaseCommandDefs, nullptr));
 
   // Loading the rest of commands.
   for (const auto& defs : config_store->LoadCommandDefs())
diff --git a/libweave/src/commands/command_manager_unittest.cc b/libweave/src/commands/command_manager_unittest.cc
index 7aa560f..8d64650 100644
--- a/libweave/src/commands/command_manager_unittest.cc
+++ b/libweave/src/commands/command_manager_unittest.cc
@@ -116,8 +116,6 @@
 TEST(CommandManager, ShouldLoadStandardAndTestDefinitions) {
   CommandManager manager;
   provider::test::MockConfigStore config_store;
-  EXPECT_CALL(config_store, LoadBaseCommandDefs())
-      .WillOnce(Return(kTestBaseCommands));
   EXPECT_CALL(config_store, LoadCommandDefs())
       .WillOnce(Return(std::map<std::string, std::string>{
           {"category", kTestVendorCommands}, {"test", kTestTestCommands}}));
diff --git a/libweave/src/states/state_manager.cc b/libweave/src/states/state_manager.cc
index a3acc41..0d96175 100644
--- a/libweave/src/states/state_manager.cc
+++ b/libweave/src/states/state_manager.cc
@@ -16,6 +16,33 @@
 
 namespace weave {
 
+namespace {
+
+const char kBaseStateDefs[] = R"({
+  "base": {
+    "firmwareVersion": "string",
+    "localDiscoveryEnabled": "boolean",
+    "localAnonymousAccessMaxRole": [ "none", "viewer", "user" ],
+    "localPairingEnabled": "boolean",
+    "network": {
+      "properties": {
+        "name": "string"
+      }
+    }
+  }
+})";
+
+const char kBaseStateDefaults[] = R"({
+  "base": {
+    "firmwareVersion": "unknown",
+    "localDiscoveryEnabled": false,
+    "localAnonymousAccessMaxRole": "none",
+    "localPairingEnabled": false
+  }
+})";
+
+}
+
 StateManager::StateManager(StateChangeQueueInterface* state_change_queue)
     : state_change_queue_(state_change_queue) {
   CHECK(state_change_queue_) << "State change queue not specified";
@@ -32,14 +59,14 @@
   LOG(INFO) << "Initializing StateManager.";
 
   // Load standard device state definition.
-  CHECK(LoadBaseStateDefinition(config_store->LoadBaseStateDefs(), nullptr));
+  CHECK(LoadBaseStateDefinition(kBaseStateDefs, nullptr));
 
   // Load component-specific device state definitions.
   for (const auto& pair : config_store->LoadStateDefs())
     CHECK(LoadStateDefinition(pair.second, pair.first, nullptr));
 
   // Load standard device state defaults.
-  CHECK(LoadStateDefaults(config_store->LoadBaseStateDefaults(), nullptr));
+  CHECK(LoadStateDefaults(kBaseStateDefaults, nullptr));
 
   // Load component-specific device state defaults.
   for (const auto& json : config_store->LoadStateDefaults())
diff --git a/libweave/src/states/state_manager_unittest.cc b/libweave/src/states/state_manager_unittest.cc
index b7ae37e..8d07e65 100644
--- a/libweave/src/states/state_manager_unittest.cc
+++ b/libweave/src/states/state_manager_unittest.cc
@@ -141,15 +141,10 @@
   provider::test::MockConfigStore config_store;
   StateManager manager(&mock_state_change_queue_);
 
-  EXPECT_CALL(config_store, LoadBaseStateDefs())
-      .WillOnce(Return(kBaseDefinition));
-
   EXPECT_CALL(config_store, LoadStateDefs())
       .WillOnce(Return(std::map<std::string, std::string>{
           {"powerd", R"({"power": {"battery_level":"integer"}})"}}));
 
-  EXPECT_CALL(config_store, LoadBaseStateDefaults())
-      .WillOnce(Return(kBaseDefaults));
   EXPECT_CALL(config_store, LoadStateDefaults())
       .WillOnce(Return(std::vector<std::string>{
           R"({"power": {"battery_level":44}})"}));
@@ -158,14 +153,14 @@
 
   auto expected = R"({
     'base': {
-      'manufacturer': 'Test Factory',
-      'serialNumber': 'Test Model'
+      'firmwareVersion': 'unknown',
+      'localAnonymousAccessMaxRole': 'none',
+      'localDiscoveryEnabled': false,
+      'localPairingEnabled': false,
+      'network': {}
     },
     'power': {
       'battery_level': 44
-    },
-    'device': {
-      'state_property': ''
     }
   })";
   EXPECT_JSON_EQ(expected, *manager.GetStateValuesAsJson());
diff --git a/libweave/src/weave_unittest.cc b/libweave/src/weave_unittest.cc
index fab3fad..bdb70e6 100644
--- a/libweave/src/weave_unittest.cc
+++ b/libweave/src/weave_unittest.cc
@@ -41,49 +41,16 @@
 
 const char kCategory[] = "powerd";
 
-const char kBaseCommandDefs[] = R"({
-  "base": {
-    "reboot": {
-      "parameters": {"delay": "integer"},
-      "results": {}
-    },
-    "shutdown": {
-      "parameters": {},
-      "results": {}
-    }
-  }
-})";
-
 const char kCommandDefs[] = R"({
   "base": {
     "reboot": {},
-    "shutdown": {}
-  }
-})";
-
-const char kBaseStateDefs[] = R"({
-  "base": {
-    "firmwareVersion": "string",
-    "localDiscoveryEnabled": "boolean",
-    "localAnonymousAccessMaxRole": [ "none", "viewer", "user" ],
-    "localPairingEnabled": "boolean",
-    "network": {
-      "properties": {
-        "name": "string"
-      }
+    "_shutdown": {
+      "parameters": {},
+      "results": {}
     }
   }
 })";
 
-const char kBaseStateDefaults[] = R"({
-  "base": {
-    "firmwareVersion": "",
-    "localDiscoveryEnabled": false,
-    "localAnonymousAccessMaxRole": "none",
-    "localPairingEnabled": false
-  }
-})";
-
 const char kDeviceResource[] = R"({
   "kind": "clouddevices#device",
   "id": "DEVICE_ID",
@@ -192,23 +159,14 @@
   void InitConfigStore() {
     EXPECT_CALL(config_store_, SaveSettings("")).WillRepeatedly(Return());
 
-    EXPECT_CALL(config_store_, LoadBaseCommandDefs())
-        .WillOnce(Return(kBaseCommandDefs));
-
     EXPECT_CALL(config_store_, LoadCommandDefs())
         .WillOnce(Return(
             std::map<std::string, std::string>{{kCategory, kCommandDefs}}));
 
-    EXPECT_CALL(config_store_, LoadBaseStateDefs())
-        .WillOnce(Return(kBaseStateDefs));
-
     EXPECT_CALL(config_store_, LoadStateDefs())
         .WillOnce(Return(
             std::map<std::string, std::string>{{kCategory, kStateDefs}}));
 
-    EXPECT_CALL(config_store_, LoadBaseStateDefaults())
-        .WillOnce(Return(kBaseStateDefaults));
-
     EXPECT_CALL(config_store_, LoadStateDefaults())
         .WillOnce(Return(std::vector<std::string>{kStateDefaults}));
   }