| Index: chrome/browser/media_galleries/fileapi/picasa/picasa_data_provider.h
|
| diff --git a/chrome/browser/media_galleries/fileapi/picasa/picasa_data_provider.h b/chrome/browser/media_galleries/fileapi/picasa/picasa_data_provider.h
|
| deleted file mode 100644
|
| index 61b66b63bfaf9e24badef63d2d2fc4449e2e3916..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/media_galleries/fileapi/picasa/picasa_data_provider.h
|
| +++ /dev/null
|
| @@ -1,121 +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_MEDIA_GALLERIES_FILEAPI_PICASA_PICASA_DATA_PROVIDER_H_
|
| -#define CHROME_BROWSER_MEDIA_GALLERIES_FILEAPI_PICASA_PICASA_DATA_PROVIDER_H_
|
| -
|
| -#include <map>
|
| -#include <queue>
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/callback_forward.h"
|
| -#include "base/files/file_path.h"
|
| -#include "base/files/file_path_watcher.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "base/memory/weak_ptr.h"
|
| -#include "base/time/time.h"
|
| -#include "chrome/common/media_galleries/picasa_types.h"
|
| -
|
| -namespace picasa {
|
| -
|
| -class SafePicasaAlbumTableReader;
|
| -class SafePicasaAlbumsIndexer;
|
| -
|
| -// Created and owned by ImportedMediaGalleryRegistryTaskRunnerValues
|
| -class PicasaDataProvider {
|
| - public:
|
| - typedef base::Callback<void(bool)> ReadyCallback;
|
| -
|
| - enum DataType {
|
| - LIST_OF_ALBUMS_AND_FOLDERS_DATA,
|
| - ALBUMS_IMAGES_DATA
|
| - };
|
| -
|
| - explicit PicasaDataProvider(const base::FilePath& database_path);
|
| - virtual ~PicasaDataProvider();
|
| -
|
| - // Ask the data provider to refresh the data if necessary. |ready_callback|
|
| - // will be called when the data is up to date.
|
| - void RefreshData(DataType needed_data, const ReadyCallback& ready_callback);
|
| -
|
| - // These methods return scoped_ptrs because we want to return a copy that
|
| - // will not change to the caller.
|
| - scoped_ptr<AlbumMap> GetAlbums();
|
| - scoped_ptr<AlbumMap> GetFolders();
|
| - // |error| must be non-NULL.
|
| - scoped_ptr<AlbumImages> FindAlbumImages(const std::string& key,
|
| - base::PlatformFileError* error);
|
| -
|
| - protected:
|
| - // Notifies data provider that any currently cached data is stale.
|
| - virtual void InvalidateData();
|
| -
|
| - private:
|
| - enum State {
|
| - STALE_DATA_STATE,
|
| - INVALID_DATA_STATE,
|
| - LIST_OF_ALBUMS_AND_FOLDERS_FRESH_STATE,
|
| - ALBUMS_IMAGES_FRESH_STATE
|
| - };
|
| -
|
| - friend class PicasaFileUtilTest;
|
| - friend class TestPicasaDataProvider;
|
| -
|
| - // Called when the FilePathWatcher for Picasa's temp directory has started.
|
| - void OnTempDirWatchStarted(
|
| - scoped_ptr<base::FilePathWatcher> temp_dir_watcher);
|
| -
|
| - // Called when Picasa's temp directory has changed. Virtual for testing.
|
| - virtual void OnTempDirChanged(const base::FilePath& temp_dir_path,
|
| - bool error);
|
| -
|
| - // Kicks off utility processes needed to fulfill any pending callbacks.
|
| - void DoRefreshIfNecessary();
|
| -
|
| - void OnAlbumTableReaderDone(scoped_refptr<SafePicasaAlbumTableReader> reader,
|
| - bool parse_success,
|
| - const std::vector<AlbumInfo>& albums,
|
| - const std::vector<AlbumInfo>& folder);
|
| -
|
| - void OnAlbumsIndexerDone(scoped_refptr<SafePicasaAlbumsIndexer> indexer,
|
| - bool success,
|
| - const picasa::AlbumImagesMap& albums_images);
|
| -
|
| - static std::string DateToPathString(const base::Time& time);
|
| - static void UniquifyNames(const std::vector<AlbumInfo>& info_list,
|
| - AlbumMap* result_map);
|
| -
|
| - AlbumMap album_map_;
|
| - AlbumMap folder_map_;
|
| - AlbumImagesMap albums_images_;
|
| -
|
| - base::FilePath database_path_;
|
| -
|
| - State state_;
|
| -
|
| - // Callbacks that are waiting for their requested data to be ready.
|
| - std::queue<ReadyCallback> album_list_ready_callbacks_;
|
| - std::queue<ReadyCallback> albums_index_ready_callbacks_;
|
| -
|
| - // Stores the "live" in-flight utility processes. Callbacks from other
|
| - // (older) utility processes are stale and ignored. Only one of these at a
|
| - // time should be non-NULL.
|
| - scoped_refptr<SafePicasaAlbumTableReader> album_table_reader_;
|
| - scoped_refptr<SafePicasaAlbumsIndexer> albums_indexer_;
|
| -
|
| - // We watch the temp dir, as we can't detect database file modifications on
|
| - // Mac, but we are able to detect creation and deletion of temporary files.
|
| - scoped_ptr<base::FilePathWatcher> temp_dir_watcher_;
|
| -
|
| - base::WeakPtrFactory<PicasaDataProvider> weak_factory_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(PicasaDataProvider);
|
| -};
|
| -
|
| -} // namespace picasa
|
| -
|
| -#endif // CHROME_BROWSER_MEDIA_GALLERIES_FILEAPI_PICASA_PICASA_DATA_PROVIDER_H_
|
|
|