Replacing Brillo Error

Creating our own error struct to remove libchrome dependancy. This also
allows us to propogate the error up and send more useful error messages

Test: m update_engine
Change-Id: I1bb651d9b7e759c9f902590685c1910b97c4ab5d
diff --git a/aosp/binder_service_android.cc b/aosp/binder_service_android.cc
index 84b5b7a..e7c20c5 100644
--- a/aosp/binder_service_android.cc
+++ b/aosp/binder_service_android.cc
@@ -21,7 +21,6 @@
 #include <base/bind.h>
 #include <base/logging.h>
 #include <binderwrapper/binder_wrapper.h>
-#include <brillo/errors/error.h>
 #include <utils/String8.h>
 
 #include "update_engine/aosp/binder_service_android_common.h"
@@ -106,7 +105,7 @@
   const string payload_url{android::String8{url}.string()};
   vector<string> str_headers = ToVecString(header_kv_pairs);
 
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->ApplyPayload(
           payload_url, payload_offset, payload_size, str_headers, &error)) {
     return ErrorPtrToStatus(error);
@@ -121,7 +120,7 @@
     const vector<android::String16>& header_kv_pairs) {
   vector<string> str_headers = ToVecString(header_kv_pairs);
 
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->ApplyPayload(
           pfd.get(), payload_offset, payload_size, str_headers, &error)) {
     return ErrorPtrToStatus(error);
@@ -130,28 +129,28 @@
 }
 
 Status BinderUpdateEngineAndroidService::suspend() {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->SuspendUpdate(&error))
     return ErrorPtrToStatus(error);
   return Status::ok();
 }
 
 Status BinderUpdateEngineAndroidService::resume() {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->ResumeUpdate(&error))
     return ErrorPtrToStatus(error);
   return Status::ok();
 }
 
 Status BinderUpdateEngineAndroidService::cancel() {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->CancelUpdate(&error))
     return ErrorPtrToStatus(error);
   return Status::ok();
 }
 
 Status BinderUpdateEngineAndroidService::resetStatus() {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->ResetStatus(&error))
     return ErrorPtrToStatus(error);
   return Status::ok();
@@ -159,7 +158,7 @@
 
 Status BinderUpdateEngineAndroidService::setShouldSwitchSlotOnReboot(
     const android::String16& metadata_filename) {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->setShouldSwitchSlotOnReboot(
           android::String8(metadata_filename).string(), &error)) {
     return ErrorPtrToStatus(error);
@@ -168,7 +167,7 @@
 }
 
 Status BinderUpdateEngineAndroidService::resetShouldSwitchSlotOnReboot() {
-  brillo::ErrorPtr error;
+  Error error;
   if (!service_delegate_->resetShouldSwitchSlotOnReboot(&error)) {
     return ErrorPtrToStatus(error);
   }
@@ -181,10 +180,10 @@
       android::String8{metadata_filename}.string()};
   LOG(INFO) << "Received a request of verifying payload metadata in "
             << payload_metadata << ".";
-  brillo::ErrorPtr error;
+  Error error;
   *return_value =
       service_delegate_->VerifyPayloadApplicable(payload_metadata, &error);
-  if (error != nullptr)
+  if (error.error_code != ErrorCode::kSuccess)
     return ErrorPtrToStatus(error);
   return Status::ok();
 }
@@ -213,11 +212,11 @@
   vector<string> str_headers = ToVecString(header_kv_pairs);
   LOG(INFO) << "Received a request of allocating space for " << payload_metadata
             << ".";
-  brillo::ErrorPtr error;
+  Error error;
   *return_value =
       static_cast<int64_t>(service_delegate_->AllocateSpaceForPayload(
           payload_metadata, str_headers, &error));
-  if (error != nullptr)
+  if (error.error_code != ErrorCode::kSuccess)
     return ErrorPtrToStatus(error);
   return Status::ok();
 }
@@ -250,10 +249,10 @@
 
 Status BinderUpdateEngineAndroidService::cleanupSuccessfulUpdate(
     const android::sp<IUpdateEngineCallback>& callback) {
-  brillo::ErrorPtr error;
+  Error error;
   service_delegate_->CleanupSuccessfulUpdate(
       std::make_unique<CleanupSuccessfulUpdateCallback>(callback), &error);
-  if (error != nullptr)
+  if (error.error_code != ErrorCode::kSuccess)
     return ErrorPtrToStatus(error);
   return Status::ok();
 }