| Index: chrome/browser/sync/syncable/model_type.h
|
| diff --git a/chrome/browser/sync/syncable/model_type.h b/chrome/browser/sync/syncable/model_type.h
|
| deleted file mode 100644
|
| index 115d5a0dc2d07fec77ccb084b4c4bbf2f7a683bf..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/sync/syncable/model_type.h
|
| +++ /dev/null
|
| @@ -1,175 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Enumerate the various item subtypes that are supported by sync.
|
| -// Each sync object is expected to have an immutable object type.
|
| -// An object's type is inferred from the type of data it holds.
|
| -
|
| -#ifndef CHROME_BROWSER_SYNC_SYNCABLE_MODEL_TYPE_H_
|
| -#define CHROME_BROWSER_SYNC_SYNCABLE_MODEL_TYPE_H_
|
| -#pragma once
|
| -
|
| -#include <set>
|
| -#include <string>
|
| -
|
| -#include "base/logging.h"
|
| -#include "base/time.h"
|
| -#include "chrome/browser/sync/util/enum_set.h"
|
| -
|
| -namespace base {
|
| -class ListValue;
|
| -class StringValue;
|
| -class Value;
|
| -}
|
| -
|
| -namespace sync_pb {
|
| -class EntitySpecifics;
|
| -class SyncEntity;
|
| -}
|
| -
|
| -namespace syncable {
|
| -
|
| -enum ModelType {
|
| - // Object type unknown. Objects may transition through
|
| - // the unknown state during their initial creation, before
|
| - // their properties are set. After deletion, object types
|
| - // are generally preserved.
|
| - UNSPECIFIED,
|
| - // A permanent folder whose children may be of mixed
|
| - // datatypes (e.g. the "Google Chrome" folder).
|
| - TOP_LEVEL_FOLDER,
|
| -
|
| - // ------------------------------------ Start of "real" model types.
|
| - // The model types declared before here are somewhat special, as they
|
| - // they do not correspond to any browser data model. The remaining types
|
| - // are bona fide model types; all have a related browser data model and
|
| - // can be represented in the protocol using a specific Message type in the
|
| - // EntitySpecifics protocol buffer.
|
| - //
|
| - // A bookmark folder or a bookmark URL object.
|
| - BOOKMARKS,
|
| - FIRST_REAL_MODEL_TYPE = BOOKMARKS, // Declared 2nd, for debugger prettiness.
|
| -
|
| - // A preference folder or a preference object.
|
| - PREFERENCES,
|
| - // A password folder or password object.
|
| - PASSWORDS,
|
| - // An AutofillProfile Object
|
| - AUTOFILL_PROFILE,
|
| - // An autofill folder or an autofill object.
|
| - AUTOFILL,
|
| -
|
| - // A themes folder or a themes object.
|
| - THEMES,
|
| - // A typed_url folder or a typed_url object.
|
| - TYPED_URLS,
|
| - // An extension folder or an extension object.
|
| - EXTENSIONS,
|
| - // An object representing a set of Nigori keys.
|
| - NIGORI,
|
| - // An object representing a custom search engine.
|
| - SEARCH_ENGINES,
|
| - // An object representing a browser session.
|
| - SESSIONS,
|
| - // An app folder or an app object.
|
| - APPS,
|
| - // An app setting from the extension settings API.
|
| - APP_SETTINGS,
|
| - // An extension setting from the extension settings API.
|
| - EXTENSION_SETTINGS,
|
| - // App notifications.
|
| - APP_NOTIFICATIONS,
|
| - LAST_REAL_MODEL_TYPE = APP_NOTIFICATIONS,
|
| -
|
| - // If you are adding a new sync datatype that is exposed to the user via the
|
| - // sync preferences UI, be sure to update the list in
|
| - // chrome/browser/sync/user_selectable_sync_type.h so that the UMA histograms
|
| - // for sync include your new type.
|
| -
|
| - MODEL_TYPE_COUNT,
|
| -};
|
| -
|
| -typedef browser_sync::EnumSet<
|
| - ModelType, FIRST_REAL_MODEL_TYPE, LAST_REAL_MODEL_TYPE> ModelTypeSet;
|
| -typedef browser_sync::EnumSet<
|
| - ModelType, UNSPECIFIED, LAST_REAL_MODEL_TYPE> FullModelTypeSet;
|
| -
|
| -inline ModelType ModelTypeFromInt(int i) {
|
| - DCHECK_GE(i, 0);
|
| - DCHECK_LT(i, MODEL_TYPE_COUNT);
|
| - return static_cast<ModelType>(i);
|
| -}
|
| -
|
| -void AddDefaultFieldValue(syncable::ModelType datatype,
|
| - sync_pb::EntitySpecifics* specifics);
|
| -
|
| -// Extract the model type of a SyncEntity protocol buffer. ModelType is a
|
| -// local concept: the enum is not in the protocol. The SyncEntity's ModelType
|
| -// is inferred from the presence of particular datatype field in the
|
| -// entity specifics.
|
| -ModelType GetModelType(const sync_pb::SyncEntity& sync_entity);
|
| -
|
| -// Extract the model type from an EntitySpecifics field. Note that there
|
| -// are some ModelTypes (like TOP_LEVEL_FOLDER) that can't be inferred this way;
|
| -// prefer using GetModelType where possible.
|
| -ModelType GetModelTypeFromSpecifics(const sync_pb::EntitySpecifics& specifics);
|
| -
|
| -// If this returns false, we shouldn't bother maintaining a position
|
| -// value (sibling ordering) for this item.
|
| -bool ShouldMaintainPosition(ModelType model_type);
|
| -
|
| -// Determine a model type from the field number of its associated
|
| -// EntitySpecifics field.
|
| -ModelType GetModelTypeFromSpecificsFieldNumber(int field_number);
|
| -
|
| -// Return the field number of the EntitySpecifics field associated with
|
| -// a model type.
|
| -int GetSpecificsFieldNumberFromModelType(ModelType model_type);
|
| -
|
| -// TODO(sync): The functions below badly need some cleanup.
|
| -
|
| -// Returns a pointer to a string with application lifetime that represents
|
| -// the name of |model_type|.
|
| -const char* ModelTypeToString(ModelType model_type);
|
| -
|
| -// Handles all model types, and not just real ones.
|
| -//
|
| -// Caller takes ownership of returned value.
|
| -base::StringValue* ModelTypeToValue(ModelType model_type);
|
| -
|
| -// Converts a Value into a ModelType - complement to ModelTypeToValue().
|
| -ModelType ModelTypeFromValue(const base::Value& value);
|
| -
|
| -// Returns the ModelType corresponding to the name |model_type_string|.
|
| -ModelType ModelTypeFromString(const std::string& model_type_string);
|
| -
|
| -std::string ModelTypeSetToString(ModelTypeSet model_types);
|
| -
|
| -// Caller takes ownership of returned list.
|
| -base::ListValue* ModelTypeSetToValue(ModelTypeSet model_types);
|
| -
|
| -ModelTypeSet ModelTypeSetFromValue(const base::ListValue& value);
|
| -
|
| -// Returns a string corresponding to the syncable tag for this datatype.
|
| -std::string ModelTypeToRootTag(ModelType type);
|
| -
|
| -// Convert a real model type to a notification type (used for
|
| -// subscribing to server-issued notifications). Returns true iff
|
| -// |model_type| was a real model type and |notification_type| was
|
| -// filled in.
|
| -bool RealModelTypeToNotificationType(ModelType model_type,
|
| - std::string* notification_type);
|
| -
|
| -// Converts a notification type to a real model type. Returns true
|
| -// iff |notification_type| was the notification type of a real model
|
| -// type and |model_type| was filled in.
|
| -bool NotificationTypeToRealModelType(const std::string& notification_type,
|
| - ModelType* model_type);
|
| -
|
| -// Returns true if |model_type| is a real datatype
|
| -bool IsRealDataType(ModelType model_type);
|
| -
|
| -} // namespace syncable
|
| -
|
| -#endif // CHROME_BROWSER_SYNC_SYNCABLE_MODEL_TYPE_H_
|
|
|