| Index: webkit/common/database/database_connections.h
|
| diff --git a/webkit/common/database/database_connections.h b/webkit/common/database/database_connections.h
|
| index 88421cba35a5ae307510fcc31ca3026a7c252013..b847909cdde97586b7e36917ce6d4b6eaf04ec53 100644
|
| --- a/webkit/common/database/database_connections.h
|
| +++ b/webkit/common/database/database_connections.h
|
| @@ -1,99 +1,5 @@
|
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +// Copyright 2014 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 WEBKIT_COMMON_DATABASE_DATABASE_CONNECTIONS_H_
|
| -#define WEBKIT_COMMON_DATABASE_DATABASE_CONNECTIONS_H_
|
| -
|
| -#include <map>
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/memory/ref_counted.h"
|
| -#include "base/strings/string16.h"
|
| -#include "base/synchronization/lock.h"
|
| -#include "webkit/common/storage_common_export.h"
|
| -
|
| -namespace base {
|
| -class MessageLoopProxy;
|
| -}
|
| -
|
| -namespace storage {
|
| -
|
| -class STORAGE_COMMON_EXPORT DatabaseConnections {
|
| - public:
|
| - DatabaseConnections();
|
| - ~DatabaseConnections();
|
| -
|
| - bool IsEmpty() const;
|
| - bool IsDatabaseOpened(const std::string& origin_identifier,
|
| - const base::string16& database_name) const;
|
| - bool IsOriginUsed(const std::string& origin_identifier) const;
|
| -
|
| - // Returns true if this is the first connection.
|
| - bool AddConnection(const std::string& origin_identifier,
|
| - const base::string16& database_name);
|
| -
|
| - // Returns true if the last connection was removed.
|
| - bool RemoveConnection(const std::string& origin_identifier,
|
| - const base::string16& database_name);
|
| -
|
| - void RemoveAllConnections();
|
| - void RemoveConnections(
|
| - const DatabaseConnections& connections,
|
| - std::vector<std::pair<std::string, base::string16> >* closed_dbs);
|
| -
|
| - // Database sizes can be kept only if IsDatabaseOpened returns true.
|
| - int64 GetOpenDatabaseSize(const std::string& origin_identifier,
|
| - const base::string16& database_name) const;
|
| - void SetOpenDatabaseSize(const std::string& origin_identifier,
|
| - const base::string16& database_name,
|
| - int64 size);
|
| -
|
| - // Returns a list of the connections, <origin_id, name>.
|
| - void ListConnections(
|
| - std::vector<std::pair<std::string, base::string16> > *list) const;
|
| -
|
| - private:
|
| - // Mapping from name to <openCount, size>
|
| - typedef std::map<base::string16, std::pair<int, int64> > DBConnections;
|
| - typedef std::map<std::string, DBConnections> OriginConnections;
|
| - mutable OriginConnections connections_; // mutable for GetOpenDatabaseSize
|
| -
|
| - // Returns true if the last connection was removed.
|
| - bool RemoveConnectionsHelper(const std::string& origin_identifier,
|
| - const base::string16& database_name,
|
| - int num_connections);
|
| -};
|
| -
|
| -// A wrapper class that provides thread-safety and the
|
| -// ability to wait until all connections have closed.
|
| -// Intended for use in renderer processes.
|
| -class STORAGE_COMMON_EXPORT DatabaseConnectionsWrapper
|
| - : public base::RefCountedThreadSafe<DatabaseConnectionsWrapper> {
|
| - public:
|
| - DatabaseConnectionsWrapper();
|
| -
|
| - // The Wait and Has methods should only be called on the
|
| - // main thread (the thread on which the wrapper is constructed).
|
| - void WaitForAllDatabasesToClose();
|
| - bool HasOpenConnections();
|
| -
|
| - // Add and Remove may be called on any thread.
|
| - void AddOpenConnection(const std::string& origin_identifier,
|
| - const base::string16& database_name);
|
| - void RemoveOpenConnection(const std::string& origin_identifier,
|
| - const base::string16& database_name);
|
| - private:
|
| - ~DatabaseConnectionsWrapper();
|
| - friend class base::RefCountedThreadSafe<DatabaseConnectionsWrapper>;
|
| -
|
| - bool waiting_for_dbs_to_close_;
|
| - base::Lock open_connections_lock_;
|
| - DatabaseConnections open_connections_;
|
| - scoped_refptr<base::MessageLoopProxy> main_thread_;
|
| -};
|
| -
|
| -} // namespace storage
|
| -
|
| -#endif // WEBKIT_COMMON_DATABASE_DATABASE_CONNECTIONS_H_
|
| +#include "storage/common/database/database_connections.h"
|
|
|