| Index: content/browser/indexed_db/indexed_db_metadata.h
|
| diff --git a/content/browser/indexed_db/indexed_db_metadata.h b/content/browser/indexed_db/indexed_db_metadata.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4524660de8e6fd670fb68a3dbd00564cdfcbb27d
|
| --- /dev/null
|
| +++ b/content/browser/indexed_db/indexed_db_metadata.h
|
| @@ -0,0 +1,83 @@
|
| +// Copyright (c) 2013 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.
|
| +
|
| +#ifndef CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
|
| +#define CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
|
| +
|
| +#include <map>
|
| +
|
| +#include "base/string16.h"
|
| +#include "content/common/indexed_db/indexed_db_key_path.h"
|
| +
|
| +namespace content {
|
| +
|
| +struct IndexedDBIndexMetadata {
|
| + IndexedDBIndexMetadata() {}
|
| + IndexedDBIndexMetadata(const string16& name,
|
| + int64_t id,
|
| + const IndexedDBKeyPath& key_path,
|
| + bool unique,
|
| + bool multi_entry)
|
| + : name(name),
|
| + id(id),
|
| + key_path(key_path),
|
| + unique(unique),
|
| + multi_entry(multi_entry) {}
|
| + string16 name;
|
| + int64_t id;
|
| + IndexedDBKeyPath key_path;
|
| + bool unique;
|
| + bool multi_entry;
|
| +
|
| + static const int64_t kInvalidId = -1;
|
| +};
|
| +
|
| +struct CONTENT_EXPORT IndexedDBObjectStoreMetadata {
|
| + IndexedDBObjectStoreMetadata();
|
| + IndexedDBObjectStoreMetadata(const string16& name,
|
| + int64_t id,
|
| + const IndexedDBKeyPath& key_path,
|
| + bool auto_increment,
|
| + int64_t max_index_id);
|
| + ~IndexedDBObjectStoreMetadata();
|
| + string16 name;
|
| + int64_t id;
|
| + IndexedDBKeyPath key_path;
|
| + bool auto_increment;
|
| + int64_t max_index_id;
|
| +
|
| + static const int64_t kInvalidId = -1;
|
| +
|
| + typedef std::map<int64_t, IndexedDBIndexMetadata> IndexMap;
|
| + IndexMap indexes;
|
| +};
|
| +
|
| +struct CONTENT_EXPORT IndexedDBDatabaseMetadata {
|
| + // TODO(jsbell): These can probably be collapsed into 0.
|
| + enum {
|
| + NO_INT_VERSION = -1,
|
| + DEFAULT_INT_VERSION = 0
|
| + };
|
| +
|
| + typedef std::map<int64_t, IndexedDBObjectStoreMetadata> ObjectStoreMap;
|
| +
|
| + IndexedDBDatabaseMetadata();
|
| + IndexedDBDatabaseMetadata(const string16& name,
|
| + int64_t id,
|
| + const string16& version,
|
| + int64_t int_version,
|
| + int64_t max_object_store_id);
|
| + ~IndexedDBDatabaseMetadata();
|
| +
|
| + string16 name;
|
| + int64_t id;
|
| + string16 version;
|
| + int64_t int_version;
|
| + int64_t max_object_store_id;
|
| +
|
| + ObjectStoreMap object_stores;
|
| +};
|
| +}
|
| +
|
| +#endif // CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
|
|
|