Remove output error parameter from BuildDeviceResource

This method never fails.

Change-Id: If7c385f967e943172fa97e98c2c1c4e18a5cdc8f
Reviewed-on: https://weave-review.googlesource.com/1798
Reviewed-by: Alex Vakulenko <avakulenko@google.com>
diff --git a/src/device_registration_info.cc b/src/device_registration_info.cc
index abdbb08..3bc7515 100644
--- a/src/device_registration_info.cc
+++ b/src/device_registration_info.cc
@@ -477,7 +477,7 @@
 }
 
 std::unique_ptr<base::DictionaryValue>
-DeviceRegistrationInfo::BuildDeviceResource(ErrorPtr* error) {
+DeviceRegistrationInfo::BuildDeviceResource() const {
   std::unique_ptr<base::DictionaryValue> resource{new base::DictionaryValue};
   if (!GetSettings().cloud_id.empty())
     resource->SetString("id", GetSettings().cloud_id);
@@ -521,11 +521,8 @@
 
 void DeviceRegistrationInfo::RegisterDevice(const std::string& ticket_id,
                                             const DoneCallback& callback) {
-  ErrorPtr error;
-  std::unique_ptr<base::DictionaryValue> device_draft =
-      BuildDeviceResource(&error);
-  if (!device_draft)
-    return RegisterDeviceError(callback, std::move(error));
+  std::unique_ptr<base::DictionaryValue> device_draft = BuildDeviceResource();
+  CHECK(device_draft);
 
   base::DictionaryValue req_json;
   req_json.SetString("id", ticket_id);
@@ -897,12 +894,9 @@
   queued_resource_update_callbacks_.clear();
 
   VLOG(1) << "Updating GCD server with CDD...";
-  ErrorPtr error;
   std::unique_ptr<base::DictionaryValue> device_resource =
-      BuildDeviceResource(&error);
-  if (!device_resource) {
-    return OnUpdateDeviceResourceError(std::move(error));
-  }
+      BuildDeviceResource();
+  CHECK(device_resource);
 
   std::string url = GetDeviceURL(
       {}, {{"lastUpdateTimeMs", last_device_resource_updated_timestamp_}});
diff --git a/src/device_registration_info.h b/src/device_registration_info.h
index f3b5302..ff9c29b 100644
--- a/src/device_registration_info.h
+++ b/src/device_registration_info.h
@@ -247,7 +247,7 @@
   // Builds Cloud API devices collection REST resource which matches
   // current state of the device including command definitions
   // for all supported commands and current device state.
-  std::unique_ptr<base::DictionaryValue> BuildDeviceResource(ErrorPtr* error);
+  std::unique_ptr<base::DictionaryValue> BuildDeviceResource() const;
 
   void SetGcdState(GcdState new_state);
   void SetDeviceId(const std::string& cloud_id);