| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2008 Apple Inc. All Rights Reserved. | 2  * Copyright (C) 2008 Apple Inc. All Rights Reserved. | 
| 3  * Copyright (C) 2009, 2011 Google Inc. All Rights Reserved. | 3  * Copyright (C) 2009, 2011 Google Inc. All Rights Reserved. | 
| 4  * | 4  * | 
| 5  * Redistribution and use in source and binary forms, with or without | 5  * Redistribution and use in source and binary forms, with or without | 
| 6  * modification, are permitted provided that the following conditions | 6  * modification, are permitted provided that the following conditions | 
| 7  * are met: | 7  * are met: | 
| 8  * 1. Redistributions of source code must retain the above copyright | 8  * 1. Redistributions of source code must retain the above copyright | 
| 9  *    notice, this list of conditions and the following disclaimer. | 9  *    notice, this list of conditions and the following disclaimer. | 
| 10  * 2. Redistributions in binary form must reproduce the above copyright | 10  * 2. Redistributions in binary form must reproduce the above copyright | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
| 35 #include "core/dom/ExceptionCode.h" | 35 #include "core/dom/ExceptionCode.h" | 
| 36 #include "core/workers/WorkerGlobalScope.h" | 36 #include "core/workers/WorkerGlobalScope.h" | 
| 37 #include "modules/webdatabase/Database.h" | 37 #include "modules/webdatabase/Database.h" | 
| 38 #include "modules/webdatabase/DatabaseCallback.h" | 38 #include "modules/webdatabase/DatabaseCallback.h" | 
| 39 #include "modules/webdatabase/DatabaseManager.h" | 39 #include "modules/webdatabase/DatabaseManager.h" | 
| 40 #include "modules/webdatabase/DatabaseSync.h" | 40 #include "modules/webdatabase/DatabaseSync.h" | 
| 41 #include "platform/weborigin/SecurityOrigin.h" | 41 #include "platform/weborigin/SecurityOrigin.h" | 
| 42 | 42 | 
| 43 namespace WebCore { | 43 namespace WebCore { | 
| 44 | 44 | 
| 45 PassRefPtr<Database> WorkerGlobalScopeWebDatabase::openDatabase(WorkerGlobalScop
    e* context, const String& name, const String& version, const String& displayName
    , unsigned long estimatedSize, PassOwnPtr<DatabaseCallback> creationCallback, Ex
    ceptionState& exceptionState) | 45 PassRefPtr<Database> WorkerGlobalScopeWebDatabase::openDatabase(WorkerGlobalScop
    e& context, const String& name, const String& version, const String& displayName
    , unsigned long estimatedSize, PassOwnPtr<DatabaseCallback> creationCallback, Ex
    ceptionState& exceptionState) | 
| 46 { | 46 { | 
| 47     DatabaseManager& dbManager = DatabaseManager::manager(); | 47     DatabaseManager& dbManager = DatabaseManager::manager(); | 
| 48     RefPtr<Database> database; | 48     RefPtr<Database> database; | 
| 49     DatabaseError error = DatabaseError::None; | 49     DatabaseError error = DatabaseError::None; | 
| 50     if (RuntimeEnabledFeatures::databaseEnabled() && context->securityOrigin()->
    canAccessDatabase()) { | 50     if (RuntimeEnabledFeatures::databaseEnabled() && context.securityOrigin()->c
    anAccessDatabase()) { | 
| 51         String errorMessage; | 51         String errorMessage; | 
| 52         database = dbManager.openDatabase(context, name, version, displayName, e
    stimatedSize, creationCallback, error, errorMessage); | 52         database = dbManager.openDatabase(&context, name, version, displayName, 
    estimatedSize, creationCallback, error, errorMessage); | 
| 53         ASSERT(database || error != DatabaseError::None); | 53         ASSERT(database || error != DatabaseError::None); | 
| 54         if (error != DatabaseError::None) | 54         if (error != DatabaseError::None) | 
| 55             DatabaseManager::throwExceptionForDatabaseError(error, errorMessage,
     exceptionState); | 55             DatabaseManager::throwExceptionForDatabaseError(error, errorMessage,
     exceptionState); | 
| 56     } else { | 56     } else { | 
| 57         exceptionState.throwSecurityError("Access to the WebDatabase API is deni
    ed in this context."); | 57         exceptionState.throwSecurityError("Access to the WebDatabase API is deni
    ed in this context."); | 
| 58     } | 58     } | 
| 59 | 59 | 
| 60     return database.release(); | 60     return database.release(); | 
| 61 } | 61 } | 
| 62 | 62 | 
| 63 PassRefPtr<DatabaseSync> WorkerGlobalScopeWebDatabase::openDatabaseSync(WorkerGl
    obalScope* context, const String& name, const String& version, const String& dis
    playName, unsigned long estimatedSize, PassOwnPtr<DatabaseCallback> creationCall
    back, ExceptionState& exceptionState) | 63 PassRefPtr<DatabaseSync> WorkerGlobalScopeWebDatabase::openDatabaseSync(WorkerGl
    obalScope& context, const String& name, const String& version, const String& dis
    playName, unsigned long estimatedSize, PassOwnPtr<DatabaseCallback> creationCall
    back, ExceptionState& exceptionState) | 
| 64 { | 64 { | 
| 65     DatabaseManager& dbManager = DatabaseManager::manager(); | 65     DatabaseManager& dbManager = DatabaseManager::manager(); | 
| 66     RefPtr<DatabaseSync> database; | 66     RefPtr<DatabaseSync> database; | 
| 67     DatabaseError error =  DatabaseError::None; | 67     DatabaseError error =  DatabaseError::None; | 
| 68     if (RuntimeEnabledFeatures::databaseEnabled() && context->securityOrigin()->
    canAccessDatabase()) { | 68     if (RuntimeEnabledFeatures::databaseEnabled() && context.securityOrigin()->c
    anAccessDatabase()) { | 
| 69         String errorMessage; | 69         String errorMessage; | 
| 70         database = dbManager.openDatabaseSync(context, name, version, displayNam
    e, estimatedSize, creationCallback, error, errorMessage); | 70         database = dbManager.openDatabaseSync(&context, name, version, displayNa
    me, estimatedSize, creationCallback, error, errorMessage); | 
| 71         ASSERT(database || error != DatabaseError::None); | 71         ASSERT(database || error != DatabaseError::None); | 
| 72         if (error != DatabaseError::None) | 72         if (error != DatabaseError::None) | 
| 73             DatabaseManager::throwExceptionForDatabaseError(error, errorMessage,
     exceptionState); | 73             DatabaseManager::throwExceptionForDatabaseError(error, errorMessage,
     exceptionState); | 
| 74     } else { | 74     } else { | 
| 75         exceptionState.throwSecurityError("Access to the WebDatabase API is deni
    ed in this context."); | 75         exceptionState.throwSecurityError("Access to the WebDatabase API is deni
    ed in this context."); | 
| 76     } | 76     } | 
| 77 | 77 | 
| 78     return database.release(); | 78     return database.release(); | 
| 79 } | 79 } | 
| 80 | 80 | 
| 81 } // namespace WebCore | 81 } // namespace WebCore | 
| OLD | NEW | 
|---|