Home | History | Annotate | Download | only in storage
      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/extensions/api/storage/settings_namespace.h"
      6 
      7 #include "base/logging.h"
      8 
      9 namespace extensions {
     10 
     11 namespace settings_namespace {
     12 
     13 namespace {
     14 const char kLocalNamespace[] = "local";
     15 const char kSyncNamespace[]  = "sync";
     16 const char kManagedNamespace[] = "managed";
     17 }  // namespace
     18 
     19 std::string ToString(Namespace settings_namespace) {
     20   switch (settings_namespace) {
     21     case LOCAL:   return kLocalNamespace;
     22     case SYNC:    return kSyncNamespace;
     23     case MANAGED: return kManagedNamespace;
     24     case INVALID: break;
     25   }
     26   NOTREACHED();
     27   return std::string();
     28 }
     29 
     30 Namespace FromString(const std::string& namespace_string) {
     31   if (namespace_string == kLocalNamespace)
     32     return LOCAL;
     33   if (namespace_string == kSyncNamespace)
     34     return SYNC;
     35   if (namespace_string == kManagedNamespace)
     36     return MANAGED;
     37   return INVALID;
     38 }
     39 
     40 }  // namespace settings_namespace
     41 
     42 }  // namespace extensions
     43