Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Unified Diff: chrome/browser/sync_file_system/drive_backend/drive_metadata_store.h

Issue 23787003: [SyncFS] Move SyncFS V1 files from drive_backend to drive_backend_v1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: move back metadata_db_migration_util* Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync_file_system/drive_backend/drive_metadata_store.h
diff --git a/chrome/browser/sync_file_system/drive_backend/drive_metadata_store.h b/chrome/browser/sync_file_system/drive_backend/drive_metadata_store.h
deleted file mode 100644
index 14365778c3004a378626f8f6847d75b750793479..0000000000000000000000000000000000000000
--- a/chrome/browser/sync_file_system/drive_backend/drive_metadata_store.h
+++ /dev/null
@@ -1,189 +0,0 @@
-// Copyright 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 CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_DRIVE_METADATA_STORE_H_
-#define CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_DRIVE_METADATA_STORE_H_
-
-#include <map>
-#include <string>
-#include <utility>
-#include <vector>
-
-#include "base/callback_forward.h"
-#include "base/files/file_path.h"
-#include "base/logging.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/memory/weak_ptr.h"
-#include "base/threading/non_thread_safe.h"
-#include "chrome/browser/sync_file_system/sync_callbacks.h"
-#include "chrome/browser/sync_file_system/sync_status_code.h"
-#include "webkit/browser/fileapi/file_system_url.h"
-
-namespace base {
-class ListValue;
-class SequencedTaskRunner;
-}
-
-namespace leveldb {
-class DB;
-class WriteBatch;
-}
-
-class GURL;
-
-namespace sync_file_system {
-
-class DriveMetadata;
-struct DBContents;
-struct FileMetadata;
-
-// This class holds a snapshot of the server side metadata.
-class DriveMetadataStore
- : public base::NonThreadSafe,
- public base::SupportsWeakPtr<DriveMetadataStore> {
- public:
- typedef std::map<GURL, std::string> ResourceIdByOrigin;
- typedef std::map<std::string, GURL> OriginByResourceId;
- typedef std::map<base::FilePath, DriveMetadata> PathToMetadata;
- typedef std::map<GURL, PathToMetadata> MetadataMap;
- typedef std::vector<std::pair<fileapi::FileSystemURL, DriveMetadata> >
- URLAndDriveMetadataList;
- typedef base::Callback<void(SyncStatusCode status, bool created)>
- InitializationCallback;
-
- static const base::FilePath::CharType kDatabaseName[];
-
- DriveMetadataStore(const base::FilePath& base_dir,
- base::SequencedTaskRunner* file_task_runner);
- ~DriveMetadataStore();
-
- // Initializes the internal database and loads its content to memory.
- // This function works asynchronously.
- void Initialize(const InitializationCallback& callback);
-
- void SetLargestChangeStamp(int64 largest_changestamp,
- const SyncStatusCallback& callback);
- int64 GetLargestChangeStamp() const;
-
- // Updates database entry. Invokes |callback|, upon completion.
- void UpdateEntry(const fileapi::FileSystemURL& url,
- const DriveMetadata& metadata,
- const SyncStatusCallback& callback);
-
- // Deletes database entry for |url|. Invokes |callback|, upon completion.
- void DeleteEntry(const fileapi::FileSystemURL& url,
- const SyncStatusCallback& callback);
-
- // Lookups and reads the database entry for |url|.
- SyncStatusCode ReadEntry(const fileapi::FileSystemURL& url,
- DriveMetadata* metadata) const;
-
- // Marks |origin| as incremental sync and associates it with the directory
- // identified by |resource_id|.
- // |origin| must not already be an incremental sync origin.
- void AddIncrementalSyncOrigin(const GURL& origin,
- const std::string& resource_id);
-
- // Returns true if |origin| is an incremental sync or disabled origin.
- bool IsKnownOrigin(const GURL& origin) const;
-
- // Returns true if |origin| is an incremental sync origin, i.e. the origin's
- // entire file list has been cached and is ready to apply changes
- // incrementally.
- bool IsIncrementalSyncOrigin(const GURL& origin) const;
-
- // Returns true if |origin| is a disabled origin.
- bool IsOriginDisabled(const GURL& origin) const;
-
- void EnableOrigin(const GURL& origin,
- const SyncStatusCallback& callback);
-
- void DisableOrigin(const GURL& origin,
- const SyncStatusCallback& callback);
-
- void RemoveOrigin(const GURL& origin,
- const SyncStatusCallback& callback);
-
- // Sets the directory identified by |resource_id| as the sync data directory.
- // All data for the Sync FileSystem should be store into the directory.
- void SetSyncRootDirectory(const std::string& resource_id);
- void SetOriginRootDirectory(const GURL& origin,
- const std::string& resource_id);
-
- // Returns a set of URLs for files in conflict.
- SyncStatusCode GetConflictURLs(
- fileapi::FileSystemURLSet* urls) const;
-
- // Returns a set of URLs and Resource IDs for files to be fetched.
- SyncStatusCode GetToBeFetchedFiles(URLAndDriveMetadataList* list) const;
-
- // Returns resource id for |origin|.
- // This may return an empty string if |origin| is not a incremental or
- // disabled origin.
- std::string GetResourceIdForOrigin(const GURL& origin) const;
-
- const std::string& sync_root_directory() const {
- DCHECK(CalledOnValidThread());
- return sync_root_directory_resource_id_;
- }
-
- const ResourceIdByOrigin& incremental_sync_origins() const {
- DCHECK(CalledOnValidThread());
- return incremental_sync_origins_;
- }
-
- const ResourceIdByOrigin& disabled_origins() const {
- DCHECK(CalledOnValidThread());
- return disabled_origins_;
- }
-
- // Returns all tracked origins. i.e. incremental_sync_origins_ and
- // disabled_origins_.
- void GetAllOrigins(std::vector<GURL>* origins);
-
- // Maps |resource_id| to corresponding |origin|.
- // Returns true if the directory indicated by |resource_id| is not an origin
- // root directory.
- bool GetOriginByOriginRootDirectoryId(const std::string& resource_id,
- GURL* origin);
-
- // Returns all file metadata for the given origin.
- scoped_ptr<base::ListValue> DumpFiles(const GURL& origin);
-
- private:
- friend class DriveMetadataStoreTest;
-
- void WriteToDB(scoped_ptr<leveldb::WriteBatch> batch,
- const SyncStatusCallback& callback);
-
- void UpdateDBStatus(SyncStatusCode status);
- void UpdateDBStatusAndInvokeCallback(const SyncStatusCallback& callback,
- const leveldb::Status& status);
- void DidInitialize(const InitializationCallback& callback,
- scoped_ptr<DBContents> contents);
- void DidUpdateOrigin(const SyncStatusCallback& callback,
- SyncStatusCode status);
-
- leveldb::DB* GetDBInstanceForTesting();
-
- scoped_refptr<base::SequencedTaskRunner> file_task_runner_;
- base::FilePath base_dir_;
- scoped_ptr<leveldb::DB> db_;
- SyncStatusCode db_status_;
-
- int64 largest_changestamp_;
- MetadataMap metadata_map_;
-
- std::string sync_root_directory_resource_id_;
- ResourceIdByOrigin incremental_sync_origins_;
- ResourceIdByOrigin disabled_origins_;
-
- OriginByResourceId origin_by_resource_id_;
-
- DISALLOW_COPY_AND_ASSIGN(DriveMetadataStore);
-};
-
-} // namespace sync_file_system
-
-#endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_DRIVE_BACKEND_DRIVE_METADATA_STORE_H_

Powered by Google App Engine
This is Rietveld 408576698