Switch BaseApiHandler to use weave::Device interface

BUG:24267885
Change-Id: Ifd6cb2e6f71765fd7b1cc8939da3c853f612fb9f
Reviewed-on: https://weave-review.googlesource.com/1249
Reviewed-by: Alex Vakulenko <avakulenko@google.com>
diff --git a/libweave/src/base_api_handler.h b/libweave/src/base_api_handler.h
index c1a5f2e..b8a8bd1 100644
--- a/libweave/src/base_api_handler.h
+++ b/libweave/src/base_api_handler.h
@@ -13,9 +13,8 @@
 namespace weave {
 
 class Command;
-class CommandManager;
+class Device;
 class DeviceRegistrationInfo;
-class StateManager;
 struct Settings;
 
 // Handles commands from 'base' package.
@@ -26,9 +25,7 @@
 //  base.updateBaseConfiguration
 class BaseApiHandler final {
  public:
-  BaseApiHandler(DeviceRegistrationInfo* device_info,
-                 const std::shared_ptr<StateManager>& state_manager,
-                 const std::shared_ptr<CommandManager>& command_manager);
+  BaseApiHandler(DeviceRegistrationInfo* device_info, Device* device);
 
  private:
   void OnCommandAdded(Command* command);
@@ -40,7 +37,7 @@
   void OnConfigChanged(const Settings& settings);
 
   DeviceRegistrationInfo* device_info_;
-  std::shared_ptr<StateManager> state_manager_;
+  Device* device_;
 
   base::WeakPtrFactory<BaseApiHandler> weak_ptr_factory_{this};
   DISALLOW_COPY_AND_ASSIGN(BaseApiHandler);