1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "chrome/browser/value_store/value_store.h" 6 7 #include "base/logging.h" 8 9 // Implementation of ReadResultType. 10 11 ValueStore::ReadResultType::ReadResultType(DictionaryValue* settings) 12 : settings_(settings) { 13 DCHECK(settings); 14 } 15 16 ValueStore::ReadResultType::ReadResultType(const std::string& error) 17 : error_(error) { 18 DCHECK(!error.empty()); 19 } 20 21 ValueStore::ReadResultType::~ReadResultType() {} 22 23 bool ValueStore::ReadResultType::HasError() const { 24 return !error_.empty(); 25 } 26 27 scoped_ptr<DictionaryValue>& ValueStore::ReadResultType::settings() { 28 DCHECK(!HasError()); 29 return settings_; 30 } 31 32 const std::string& ValueStore::ReadResultType::error() const { 33 DCHECK(HasError()); 34 return error_; 35 } 36 37 // Implementation of WriteResultType. 38 39 ValueStore::WriteResultType::WriteResultType(ValueStoreChangeList* changes) 40 : changes_(changes) { 41 DCHECK(changes); 42 } 43 44 ValueStore::WriteResultType::WriteResultType(const std::string& error) 45 : error_(error) { 46 DCHECK(!error.empty()); 47 } 48 49 ValueStore::WriteResultType::~WriteResultType() {} 50 51 bool ValueStore::WriteResultType::HasError() const { 52 return !error_.empty(); 53 } 54 55 const ValueStoreChangeList& ValueStore::WriteResultType::changes() const { 56 DCHECK(!HasError()); 57 return *changes_; 58 } 59 60 const std::string& ValueStore::WriteResultType::error() const { 61 DCHECK(HasError()); 62 return error_; 63 } 64