1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_CHILD_INDEXED_DB_PROXY_WEBIDBFACTORY_IMPL_H_ 6 #define CONTENT_CHILD_INDEXED_DB_PROXY_WEBIDBFACTORY_IMPL_H_ 7 8 #include "base/memory/ref_counted.h" 9 #include "third_party/WebKit/public/platform/WebIDBCallbacks.h" 10 #include "third_party/WebKit/public/platform/WebIDBDatabaseCallbacks.h" 11 #include "third_party/WebKit/public/platform/WebIDBFactory.h" 12 #include "third_party/WebKit/public/platform/WebVector.h" 13 14 namespace WebKit { 15 class WebString; 16 } 17 18 namespace content { 19 class ThreadSafeSender; 20 21 class RendererWebIDBFactoryImpl : public WebKit::WebIDBFactory { 22 public: 23 explicit RendererWebIDBFactoryImpl(ThreadSafeSender* thread_safe_sender); 24 virtual ~RendererWebIDBFactoryImpl(); 25 26 // See WebIDBFactory.h for documentation on these functions. 27 virtual void getDatabaseNames( 28 WebKit::WebIDBCallbacks* callbacks, 29 const WebKit::WebString& database_identifier); 30 virtual void open( 31 const WebKit::WebString& name, 32 long long version, 33 long long transaction_id, 34 WebKit::WebIDBCallbacks* callbacks, 35 WebKit::WebIDBDatabaseCallbacks* databaseCallbacks, 36 const WebKit::WebString& database_identifier); 37 virtual void deleteDatabase( 38 const WebKit::WebString& name, 39 WebKit::WebIDBCallbacks* callbacks, 40 const WebKit::WebString& database_identifier); 41 42 private: 43 scoped_refptr<ThreadSafeSender> thread_safe_sender_; 44 }; 45 46 } // namespace content 47 48 #endif // CONTENT_CHILD_INDEXED_DB_PROXY_WEBIDBFACTORY_IMPL_H_ 49