1 // Copyright 2015 The Weave 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 #ifndef LIBWEAVE_SRC_UTILS_H_ 6 #define LIBWEAVE_SRC_UTILS_H_ 7 8 #include <memory> 9 #include <string> 10 11 #include <base/values.h> 12 #include <weave/error.h> 13 14 namespace weave { 15 16 namespace errors { 17 extern const char kSchemaError[]; 18 extern const char kInvalidCategoryError[]; 19 extern const char kInvalidPackageError[]; 20 } // namespace errors 21 22 // kDefaultCategory represents a default state property category for standard 23 // properties from "base" package which are provided by buffet and not any of 24 // the daemons running on the device. 25 const char kDefaultCategory[] = ""; 26 27 // Helper function to load a JSON dictionary from a string. 28 std::unique_ptr<base::DictionaryValue> LoadJsonDict( 29 const std::string& json_string, 30 ErrorPtr* error); 31 32 std::unique_ptr<base::DictionaryValue> ErrorInfoToJson(const Error& error); 33 34 } // namespace weave 35 36 #endif // LIBWEAVE_SRC_UTILS_H_ 37