Changeset 109833 in webkit
- Timestamp:
- Mar 5, 2012 6:30:28 PM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 13 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r109798 r109833 1438 1438 storage/StorageSyncManager.cpp 1439 1439 storage/StorageTracker.cpp 1440 storage/WorkerContextSQLDatabase.cpp 1440 1441 1441 1442 xml/DOMParser.cpp … … 1525 1526 storage/SQLTransactionSync.idl 1526 1527 storage/SQLTransactionSyncCallback.idl 1528 storage/WorkerContextSQLDatabase.idl 1527 1529 ) 1528 1530 ENDIF () -
trunk/Source/WebCore/ChangeLog
r109832 r109833 1 2012-03-05 Adam Barth <abarth@webkit.org> 2 3 WorkerContext shouldn't need to know about SQLDatabase 4 https://bugs.webkit.org/show_bug.cgi?id=80352 5 6 Reviewed by Eric Seidel. 7 8 This patch removes the SQLDatabase functions from WorkerContext in 9 preparation for moving the SQLDatabase code into a module. These 10 functions don't interact with the rest of WorkerContext. 11 12 * CMakeLists.txt: 13 * DerivedSources.make: 14 * DerivedSources.pri: 15 * GNUmakefile.list.am: 16 * Target.pri: 17 * WebCore.gypi: 18 * WebCore.vcproj/WebCore.vcproj: 19 * WebCore.xcodeproj/project.pbxproj: 20 * storage/DOMWindowSQLDatabase.cpp: 21 * storage/WorkerContextSQLDatabase.cpp: Added. 22 (WebCore): 23 (WebCore::WorkerContextSQLDatabase::openDatabase): 24 (WebCore::WorkerContextSQLDatabase::openDatabaseSync): 25 * storage/WorkerContextSQLDatabase.h: Added. 26 (WebCore): 27 (WorkerContextSQLDatabase): 28 (WebCore::WorkerContextSQLDatabase::WorkerContextSQLDatabase): 29 (WebCore::WorkerContextSQLDatabase::~WorkerContextSQLDatabase): 30 * storage/WorkerContextSQLDatabase.idl: Added. 31 * workers/WorkerContext.cpp: 32 (WebCore): 33 * workers/WorkerContext.h: 34 (WebCore): 35 (WorkerContext): 36 * workers/WorkerContext.idl: 37 1 38 2012-03-05 Kenichi Ishibashi <bashi@chromium.org> 2 39 -
trunk/Source/WebCore/DerivedSources.make
r109798 r109833 387 387 $(WebCore)/storage/StorageInfoQuotaCallback.idl \ 388 388 $(WebCore)/storage/StorageInfoUsageCallback.idl \ 389 $(WebCore)/storage/WorkerContextSQLDatabase.idl \ 389 390 $(WebCore)/svg/ElementTimeControl.idl \ 390 391 $(WebCore)/svg/SVGAElement.idl \ -
trunk/Source/WebCore/DerivedSources.pri
r109798 r109833 409 409 $$PWD/storage/SQLTransactionSync.idl \ 410 410 $$PWD/storage/SQLTransactionSyncCallback.idl \ 411 $$PWD/storage/WorkerContextSQLDatabase.idl \ 411 412 $$PWD/testing/Internals.idl \ 412 413 $$PWD/testing/InternalSettings.idl \ -
trunk/Source/WebCore/GNUmakefile.list.am
r109798 r109833 4006 4006 Source/WebCore/storage/StorageTracker.h \ 4007 4007 Source/WebCore/storage/StorageTrackerClient.h \ 4008 Source/WebCore/storage/WorkerContextSQLDatabase.cpp \ 4009 Source/WebCore/storage/WorkerContextSQLDatabase.h \ 4008 4010 Source/WebCore/svg/animation/SMILTimeContainer.cpp \ 4009 4011 Source/WebCore/svg/animation/SMILTimeContainer.h \ -
trunk/Source/WebCore/Target.pri
r109798 r109833 1319 1319 storage/StorageSyncManager.cpp \ 1320 1320 storage/StorageTracker.cpp \ 1321 storage/WorkerContextSQLDatabase.cpp \ 1321 1322 testing/Internals.cpp \ 1322 1323 testing/InternalSettings.cpp \ … … 2549 2550 storage/StorageTracker.h \ 2550 2551 storage/StorageTrackerClient.h \ 2552 storage/WorkerContextSQLDatabase.h \ 2551 2553 svg/animation/SMILTimeContainer.h \ 2552 2554 svg/animation/SMILTime.h \ -
trunk/Source/WebCore/WebCore.gypi
r109798 r109833 1080 1080 'storage/StorageInfoQuotaCallback.idl', 1081 1081 'storage/StorageInfoUsageCallback.idl', 1082 'storage/WorkerContextSQLDatabase.idl', 1082 1083 'webaudio/AudioBuffer.idl', 1083 1084 'webaudio/AudioBufferCallback.idl', … … 4773 4774 'storage/StorageSyncManager.h', 4774 4775 'storage/StorageTracker.cpp', 4776 'storage/WorkerContextSQLDatabase.cpp', 4777 'storage/WorkerContextSQLDatabase.h', 4775 4778 'storage/chromium/DatabaseObserver.h', 4776 4779 'storage/chromium/DatabaseTrackerChromium.cpp', -
trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj
r109556 r109833 71166 71166 > 71167 71167 </File> 71168 <File 71169 RelativePath="..\storage\WorkerContextSQLDatabase.cpp" 71170 > 71171 </File> 71172 <File 71173 RelativePath="..\storage\WorkerContextSQLDatabase.h" 71174 > 71175 </File> 71168 71176 </Filter> 71169 71177 <Filter -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r109798 r109833 3553 3553 97E4A12614F4C5D400870E43 /* NavigatorRegisterProtocolHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 9730BE1514EF286B00DF06B9 /* NavigatorRegisterProtocolHandler.h */; }; 3554 3554 97E4A12714F4C5D700870E43 /* NavigatorRegisterProtocolHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9730BE1414EF286B00DF06B9 /* NavigatorRegisterProtocolHandler.cpp */; }; 3555 97E6C13D1505873F006FC943 /* WorkerContextSQLDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97E6C13A1505873F006FC943 /* WorkerContextSQLDatabase.cpp */; }; 3556 97E6C13E1505873F006FC943 /* WorkerContextSQLDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 97E6C13B1505873F006FC943 /* WorkerContextSQLDatabase.h */; }; 3555 3557 97EF7DFE107E55B700D7C49C /* ScriptControllerBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97EF7DFD107E55B700D7C49C /* ScriptControllerBase.cpp */; }; 3556 3558 984264F112D5280A000D88A4 /* LinkLoaderClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 984264EF12D5280A000D88A4 /* LinkLoaderClient.h */; }; … … 10494 10496 97E4028D13A696ED00913D67 /* IconController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IconController.cpp; sourceTree = "<group>"; }; 10495 10497 97E4028E13A696ED00913D67 /* IconController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IconController.h; sourceTree = "<group>"; }; 10498 97E6C13A1505873F006FC943 /* WorkerContextSQLDatabase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WorkerContextSQLDatabase.cpp; sourceTree = "<group>"; }; 10499 97E6C13B1505873F006FC943 /* WorkerContextSQLDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WorkerContextSQLDatabase.h; sourceTree = "<group>"; }; 10500 97E6C13C1505873F006FC943 /* WorkerContextSQLDatabase.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WorkerContextSQLDatabase.idl; sourceTree = "<group>"; }; 10496 10501 97EF7DFD107E55B700D7C49C /* ScriptControllerBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScriptControllerBase.cpp; sourceTree = "<group>"; }; 10497 10502 984264EF12D5280A000D88A4 /* LinkLoaderClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LinkLoaderClient.h; sourceTree = "<group>"; }; … … 14072 14077 3AB02D2812D4F91600FBB694 /* StorageTracker.h */, 14073 14078 3AC367FE12EF7A09006A3D6F /* StorageTrackerClient.h */, 14079 97E6C13A1505873F006FC943 /* WorkerContextSQLDatabase.cpp */, 14080 97E6C13B1505873F006FC943 /* WorkerContextSQLDatabase.h */, 14081 97E6C13C1505873F006FC943 /* WorkerContextSQLDatabase.idl */, 14074 14082 ); 14075 14083 indentWidth = 4; … … 24461 24469 9712A612150090CE0048AF10 /* WorkerContextIndexedDatabase.h in Headers */, 24462 24470 2E43464B0F546A8200B0F1BA /* WorkerContextProxy.h in Headers */, 24471 97E6C13E1505873F006FC943 /* WorkerContextSQLDatabase.h in Headers */, 24463 24472 F34742E11343631F00531BC2 /* WorkerDebuggerAgent.h in Headers */, 24464 24473 A3E2643114748991005A8588 /* WorkerEventQueue.h in Headers */, … … 27438 27447 2E4346480F546A8200B0F1BA /* WorkerContext.cpp in Sources */, 27439 27448 9712A611150090CE0048AF10 /* WorkerContextIndexedDatabase.cpp in Sources */, 27449 97E6C13D1505873F006FC943 /* WorkerContextSQLDatabase.cpp in Sources */, 27440 27450 F34742E01343631F00531BC2 /* WorkerDebuggerAgent.cpp in Sources */, 27441 27451 A3E2643014748991005A8588 /* WorkerEventQueue.cpp in Sources */, -
trunk/Source/WebCore/storage/DOMWindowSQLDatabase.cpp
r109052 r109833 26 26 27 27 #include "config.h" 28 29 #if ENABLE(SQL_DATABASE) 30 28 31 #include "DOMWindowSQLDatabase.h" 29 32 … … 35 38 #include "Frame.h" 36 39 #include "SecurityOrigin.h" 37 38 #if ENABLE(SQL_DATABASE)39 40 40 41 namespace WebCore { -
trunk/Source/WebCore/storage/WorkerContextSQLDatabase.cpp
r109832 r109833 1 1 /* 2 * Copyright (C) 200 6, 2007, 2008, 2010 Apple Inc. All rights reserved.3 * Copyright (C) 20 10 Nokia Corporation and/or its subsidiary(-ies)2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. 3 * Copyright (C) 2009, 2011 Google Inc. All Rights Reserved. 4 4 * 5 5 * Redistribution and use in source and binary forms, with or without … … 23 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 25 26 */ 26 27 27 28 #include "config.h" 28 #include "DOMWindowSQLDatabase.h"29 30 #include "AbstractDatabase.h"31 #include "DOMWindow.h"32 #include "Database.h"33 #include "DatabaseCallback.h"34 #include "Document.h"35 #include "Frame.h"36 #include "SecurityOrigin.h"37 29 38 30 #if ENABLE(SQL_DATABASE) 39 31 32 #include "WorkerContextSQLDatabase.h" 33 34 #include "AbstractDatabase.h" 35 #include "Database.h" 36 #include "DatabaseCallback.h" 37 #include "DatabaseSync.h" 38 #include "DatabaseTracker.h" 39 #include "SecurityOrigin.h" 40 #include "WorkerContext.h" 41 40 42 namespace WebCore { 41 43 42 PassRefPtr<Database> DOMWindowSQLDatabase::openDatabase(DOMWindow* window, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec)44 PassRefPtr<Database> WorkerContextSQLDatabase::openDatabase(WorkerContext* context, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec) 43 45 { 44 if (!window->isCurrentlyDisplayedInFrame()) 46 if (!context->securityOrigin()->canAccessDatabase() || !AbstractDatabase::isAvailable()) { 47 ec = SECURITY_ERR; 45 48 return 0; 49 } 46 50 47 RefPtr<Database> database = 0; 48 if (AbstractDatabase::isAvailable() && window->document()->securityOrigin()->canAccessDatabase()) 49 database = Database::openDatabase(window->document(), name, version, displayName, estimatedSize, creationCallback, ec); 51 return Database::openDatabase(context, name, version, displayName, estimatedSize, creationCallback, ec); 52 } 50 53 51 if (!database && !ec) 54 PassRefPtr<DatabaseSync> WorkerContextSQLDatabase::openDatabaseSync(WorkerContext* context, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec) 55 { 56 if (!context->securityOrigin()->canAccessDatabase() || !AbstractDatabase::isAvailable()) { 52 57 ec = SECURITY_ERR; 58 return 0; 59 } 53 60 54 return database;61 return DatabaseSync::openDatabaseSync(context, name, version, displayName, estimatedSize, creationCallback, ec); 55 62 } 56 63 -
trunk/Source/WebCore/storage/WorkerContextSQLDatabase.h
r109832 r109833 1 1 /* 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 2 * Copyright (C) 2008, 2009 Apple Inc. All rights reserved. 4 3 * 5 4 * Redistribution and use in source and binary forms, with or without … … 22 21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * 25 25 */ 26 26 27 #include "config.h" 28 #include "DOMWindowSQLDatabase.h" 29 30 #include "AbstractDatabase.h" 31 #include "DOMWindow.h" 32 #include "Database.h" 33 #include "DatabaseCallback.h" 34 #include "Document.h" 35 #include "Frame.h" 36 #include "SecurityOrigin.h" 27 #ifndef WorkerContextSQLDatabase_h 28 #define WorkerContextSQLDatabase_h 37 29 38 30 #if ENABLE(SQL_DATABASE) 39 31 32 #include "ExceptionCode.h" 33 #include "PlatformString.h" 34 #include <wtf/PassRefPtr.h> 35 #include <wtf/RefCounted.h> 36 #include <wtf/RefPtr.h> 37 40 38 namespace WebCore { 41 39 42 PassRefPtr<Database> DOMWindowSQLDatabase::openDatabase(DOMWindow* window, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec) 43 { 44 if (!window->isCurrentlyDisplayedInFrame()) 45 return 0;40 class Database; 41 class DatabaseCallback; 42 class DatabaseSync; 43 class WorkerContext; 46 44 47 RefPtr<Database> database = 0; 48 if (AbstractDatabase::isAvailable() && window->document()->securityOrigin()->canAccessDatabase()) 49 database = Database::openDatabase(window->document(), name, version, displayName, estimatedSize, creationCallback, ec); 45 class WorkerContextSQLDatabase { 46 public: 47 static PassRefPtr<Database> openDatabase(WorkerContext*, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode&); 48 static PassRefPtr<DatabaseSync> openDatabaseSync(WorkerContext*, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode&); 50 49 51 if (!database && !ec) 52 ec = SECURITY_ERR; 53 54 return database; 55 } 50 private: 51 WorkerContextSQLDatabase() { }; 52 ~WorkerContextSQLDatabase() { }; 53 }; 56 54 57 55 } // namespace WebCore 58 56 59 57 #endif // ENABLE(SQL_DATABASE) 58 59 #endif // WorkerContextSQLDatabase_h -
trunk/Source/WebCore/storage/WorkerContextSQLDatabase.idl
r109832 r109833 1 1 /* 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. 4 3 * 5 4 * Redistribution and use in source and binary forms, with or without … … 23 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * 25 25 */ 26 26 27 #include "config.h" 28 #include "DOMWindowSQLDatabase.h" 27 module window { 29 28 30 #include "AbstractDatabase.h" 31 #include "DOMWindow.h" 32 #include "Database.h" 33 #include "DatabaseCallback.h" 34 #include "Document.h" 35 #include "Frame.h" 36 #include "SecurityOrigin.h" 29 interface [ 30 Conditional=SQL_DATABASE, 31 Supplemental=WorkerContext 32 ] WorkerContextSQLDatabase { 33 [V8EnabledAtRuntime] Database openDatabase(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback) 34 raises(DOMException); 37 35 38 #if ENABLE(SQL_DATABASE) 36 [V8EnabledAtRuntime] DatabaseSync openDatabaseSync(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback) 37 raises(DOMException); 38 }; 39 39 40 namespace WebCore {41 42 PassRefPtr<Database> DOMWindowSQLDatabase::openDatabase(DOMWindow* window, const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec)43 {44 if (!window->isCurrentlyDisplayedInFrame())45 return 0;46 47 RefPtr<Database> database = 0;48 if (AbstractDatabase::isAvailable() && window->document()->securityOrigin()->canAccessDatabase())49 database = Database::openDatabase(window->document(), name, version, displayName, estimatedSize, creationCallback, ec);50 51 if (!database && !ec)52 ec = SECURITY_ERR;53 54 return database;55 40 } 56 57 } // namespace WebCore58 59 #endif // ENABLE(SQL_DATABASE) -
trunk/Source/WebCore/workers/WorkerContext.cpp
r109716 r109833 32 32 #include "WorkerContext.h" 33 33 34 #include "AbstractDatabase.h"35 34 #include "ActiveDOMObject.h" 36 35 #include "ContentSecurityPolicy.h" 37 #include "Database.h"38 #include "DatabaseCallback.h"39 #include "DatabaseSync.h"40 #include "DatabaseTracker.h"41 36 #include "DOMTimer.h" 42 37 #include "DOMURL.h" … … 309 304 #endif 310 305 311 #if ENABLE(SQL_DATABASE)312 PassRefPtr<Database> WorkerContext::openDatabase(const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec)313 {314 if (!securityOrigin()->canAccessDatabase() || !AbstractDatabase::isAvailable()) {315 ec = SECURITY_ERR;316 return 0;317 }318 319 return Database::openDatabase(this, name, version, displayName, estimatedSize, creationCallback, ec);320 }321 322 PassRefPtr<DatabaseSync> WorkerContext::openDatabaseSync(const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode& ec)323 {324 if (!securityOrigin()->canAccessDatabase() || !AbstractDatabase::isAvailable()) {325 ec = SECURITY_ERR;326 return 0;327 }328 329 return DatabaseSync::openDatabaseSync(this, name, version, displayName, estimatedSize, creationCallback, ec);330 }331 #endif332 333 306 bool WorkerContext::isContextThread() const 334 307 { -
trunk/Source/WebCore/workers/WorkerContext.h
r109716 r109833 49 49 class Blob; 50 50 class DOMURL; 51 class Database;52 class DatabaseCallback;53 class DatabaseSync;54 51 class NotificationCenter; 55 52 class ScheduledAction; … … 113 110 #endif 114 111 115 #if ENABLE(SQL_DATABASE)116 // HTML 5 client-side database117 PassRefPtr<Database> openDatabase(const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode&);118 PassRefPtr<DatabaseSync> openDatabaseSync(const String& name, const String& version, const String& displayName, unsigned long estimatedSize, PassRefPtr<DatabaseCallback> creationCallback, ExceptionCode&);119 #endif120 112 virtual bool isContextThread() const; 121 113 virtual bool isJSExecutionForbidden() const; -
trunk/Source/WebCore/workers/WorkerContext.idl
r109556 r109833 51 51 [Custom] void importScripts(/*[Variadic] in DOMString urls */); 52 52 attribute [Replaceable] WorkerNavigator navigator; 53 #if defined(ENABLE_SQL_DATABASE) && ENABLE_SQL_DATABASE54 [V8EnabledAtRuntime] Database openDatabase(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback)55 raises(DOMException);56 [V8EnabledAtRuntime] DatabaseSync openDatabaseSync(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback)57 raises(DOMException);58 #endif59 53 60 54 // Timers
Note: See TracChangeset
for help on using the changeset viewer.