15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTINGS_NAMESPACE_H_ 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTINGS_NAMESPACE_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <string> 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace extensions { 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace settings_namespace { 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// The namespaces of the storage areas. 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum Namespace { 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) LOCAL, // "local" i.e. chrome.storage.local 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SYNC, // "sync" i.e. chrome.storage.sync 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MANAGED, // "managed" i.e. chrome.storage.managed 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) INVALID 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Converts a namespace to its string representation. 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Namespace must not be INVALID. 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)std::string ToString(Namespace settings_namespace); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Converts a string representation of a namespace to its namespace, or INVALID 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// if the string doesn't map to one. 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)Namespace FromString(const std::string& ns_string); 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace settings_namespace 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace extensions 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif // CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTINGS_NAMESPACE_H_ 35