| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 87 namespace { | 87 namespace { |
| 88 | 88 |
| 89 class GetDatabaseNamesCallback final : public EventListener { | 89 class GetDatabaseNamesCallback final : public EventListener { |
| 90 WTF_MAKE_NONCOPYABLE(GetDatabaseNamesCallback); | 90 WTF_MAKE_NONCOPYABLE(GetDatabaseNamesCallback); |
| 91 public: | 91 public: |
| 92 static PassRefPtr<GetDatabaseNamesCallback> create(PassRefPtrWillBeRawPtr<Re
questDatabaseNamesCallback> requestCallback, const String& securityOrigin) | 92 static PassRefPtr<GetDatabaseNamesCallback> create(PassRefPtrWillBeRawPtr<Re
questDatabaseNamesCallback> requestCallback, const String& securityOrigin) |
| 93 { | 93 { |
| 94 return adoptRef(new GetDatabaseNamesCallback(requestCallback, securityOr
igin)); | 94 return adoptRef(new GetDatabaseNamesCallback(requestCallback, securityOr
igin)); |
| 95 } | 95 } |
| 96 | 96 |
| 97 virtual ~GetDatabaseNamesCallback() { } | 97 ~GetDatabaseNamesCallback() override { } |
| 98 | 98 |
| 99 virtual bool operator==(const EventListener& other) override | 99 bool operator==(const EventListener& other) override |
| 100 { | 100 { |
| 101 return this == &other; | 101 return this == &other; |
| 102 } | 102 } |
| 103 | 103 |
| 104 virtual void handleEvent(ExecutionContext*, Event* event) override | 104 void handleEvent(ExecutionContext*, Event* event) override |
| 105 { | 105 { |
| 106 if (!m_requestCallback->isActive()) | 106 if (!m_requestCallback->isActive()) |
| 107 return; | 107 return; |
| 108 if (event->type() != EventTypeNames::success) { | 108 if (event->type() != EventTypeNames::success) { |
| 109 m_requestCallback->sendFailure("Unexpected event type."); | 109 m_requestCallback->sendFailure("Unexpected event type."); |
| 110 return; | 110 return; |
| 111 } | 111 } |
| 112 | 112 |
| 113 IDBRequest* idbRequest = static_cast<IDBRequest*>(event->target()); | 113 IDBRequest* idbRequest = static_cast<IDBRequest*>(event->target()); |
| 114 IDBAny* requestResult = idbRequest->resultAsAny(); | 114 IDBAny* requestResult = idbRequest->resultAsAny(); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 147 RefPtr<ScriptState> m_scriptState; | 147 RefPtr<ScriptState> m_scriptState; |
| 148 }; | 148 }; |
| 149 | 149 |
| 150 class OpenDatabaseCallback final : public EventListener { | 150 class OpenDatabaseCallback final : public EventListener { |
| 151 public: | 151 public: |
| 152 static PassRefPtr<OpenDatabaseCallback> create(ExecutableWithDatabase* execu
tableWithDatabase) | 152 static PassRefPtr<OpenDatabaseCallback> create(ExecutableWithDatabase* execu
tableWithDatabase) |
| 153 { | 153 { |
| 154 return adoptRef(new OpenDatabaseCallback(executableWithDatabase)); | 154 return adoptRef(new OpenDatabaseCallback(executableWithDatabase)); |
| 155 } | 155 } |
| 156 | 156 |
| 157 virtual ~OpenDatabaseCallback() { } | 157 ~OpenDatabaseCallback() override { } |
| 158 | 158 |
| 159 virtual bool operator==(const EventListener& other) override | 159 bool operator==(const EventListener& other) override |
| 160 { | 160 { |
| 161 return this == &other; | 161 return this == &other; |
| 162 } | 162 } |
| 163 | 163 |
| 164 virtual void handleEvent(ExecutionContext* context, Event* event) override | 164 void handleEvent(ExecutionContext* context, Event* event) override |
| 165 { | 165 { |
| 166 if (event->type() != EventTypeNames::success) { | 166 if (event->type() != EventTypeNames::success) { |
| 167 m_executableWithDatabase->requestCallback()->sendFailure("Unexpected
event type."); | 167 m_executableWithDatabase->requestCallback()->sendFailure("Unexpected
event type."); |
| 168 return; | 168 return; |
| 169 } | 169 } |
| 170 | 170 |
| 171 IDBOpenDBRequest* idbOpenDBRequest = static_cast<IDBOpenDBRequest*>(even
t->target()); | 171 IDBOpenDBRequest* idbOpenDBRequest = static_cast<IDBOpenDBRequest*>(even
t->target()); |
| 172 IDBAny* requestResult = idbOpenDBRequest->resultAsAny(); | 172 IDBAny* requestResult = idbOpenDBRequest->resultAsAny(); |
| 173 if (requestResult->type() != IDBAny::IDBDatabaseType) { | 173 if (requestResult->type() != IDBAny::IDBDatabaseType) { |
| 174 m_executableWithDatabase->requestCallback()->sendFailure("Unexpected
result type."); | 174 m_executableWithDatabase->requestCallback()->sendFailure("Unexpected
result type."); |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 256 return keyPath.release(); | 256 return keyPath.release(); |
| 257 } | 257 } |
| 258 | 258 |
| 259 class DatabaseLoader final : public ExecutableWithDatabase { | 259 class DatabaseLoader final : public ExecutableWithDatabase { |
| 260 public: | 260 public: |
| 261 static PassRefPtr<DatabaseLoader> create(ScriptState* scriptState, PassRefPt
rWillBeRawPtr<RequestDatabaseCallback> requestCallback) | 261 static PassRefPtr<DatabaseLoader> create(ScriptState* scriptState, PassRefPt
rWillBeRawPtr<RequestDatabaseCallback> requestCallback) |
| 262 { | 262 { |
| 263 return adoptRef(new DatabaseLoader(scriptState, requestCallback)); | 263 return adoptRef(new DatabaseLoader(scriptState, requestCallback)); |
| 264 } | 264 } |
| 265 | 265 |
| 266 virtual ~DatabaseLoader() { } | 266 ~DatabaseLoader() override { } |
| 267 | 267 |
| 268 virtual void execute(IDBDatabase* idbDatabase) override | 268 void execute(IDBDatabase* idbDatabase) override |
| 269 { | 269 { |
| 270 if (!requestCallback()->isActive()) | 270 if (!requestCallback()->isActive()) |
| 271 return; | 271 return; |
| 272 | 272 |
| 273 const IDBDatabaseMetadata databaseMetadata = idbDatabase->metadata(); | 273 const IDBDatabaseMetadata databaseMetadata = idbDatabase->metadata(); |
| 274 | 274 |
| 275 RefPtr<TypeBuilder::Array<TypeBuilder::IndexedDB::ObjectStore>> objectSt
ores = TypeBuilder::Array<TypeBuilder::IndexedDB::ObjectStore>::create(); | 275 RefPtr<TypeBuilder::Array<TypeBuilder::IndexedDB::ObjectStore>> objectSt
ores = TypeBuilder::Array<TypeBuilder::IndexedDB::ObjectStore>::create(); |
| 276 | 276 |
| 277 for (const auto& storeMapEntry : databaseMetadata.objectStores) { | 277 for (const auto& storeMapEntry : databaseMetadata.objectStores) { |
| 278 const IDBObjectStoreMetadata& objectStoreMetadata = storeMapEntry.va
lue; | 278 const IDBObjectStoreMetadata& objectStoreMetadata = storeMapEntry.va
lue; |
| (...skipping 20 matching lines...) Expand all Loading... |
| 299 } | 299 } |
| 300 RefPtr<DatabaseWithObjectStores> result = DatabaseWithObjectStores::crea
te() | 300 RefPtr<DatabaseWithObjectStores> result = DatabaseWithObjectStores::crea
te() |
| 301 .setName(databaseMetadata.name) | 301 .setName(databaseMetadata.name) |
| 302 .setIntVersion(databaseMetadata.intVersion) | 302 .setIntVersion(databaseMetadata.intVersion) |
| 303 .setVersion(databaseMetadata.version) | 303 .setVersion(databaseMetadata.version) |
| 304 .setObjectStores(objectStores); | 304 .setObjectStores(objectStores); |
| 305 | 305 |
| 306 m_requestCallback->sendSuccess(result); | 306 m_requestCallback->sendSuccess(result); |
| 307 } | 307 } |
| 308 | 308 |
| 309 virtual RequestCallback* requestCallback() override { return m_requestCallba
ck.get(); } | 309 RequestCallback* requestCallback() override { return m_requestCallback.get()
; } |
| 310 private: | 310 private: |
| 311 DatabaseLoader(ScriptState* scriptState, PassRefPtrWillBeRawPtr<RequestDatab
aseCallback> requestCallback) | 311 DatabaseLoader(ScriptState* scriptState, PassRefPtrWillBeRawPtr<RequestDatab
aseCallback> requestCallback) |
| 312 : ExecutableWithDatabase(scriptState) | 312 : ExecutableWithDatabase(scriptState) |
| 313 , m_requestCallback(requestCallback) { } | 313 , m_requestCallback(requestCallback) { } |
| 314 RefPtrWillBePersistent<RequestDatabaseCallback> m_requestCallback; | 314 RefPtrWillBePersistent<RequestDatabaseCallback> m_requestCallback; |
| 315 }; | 315 }; |
| 316 | 316 |
| 317 static IDBKey* idbKeyFromInspectorObject(JSONObject* key) | 317 static IDBKey* idbKeyFromInspectorObject(JSONObject* key) |
| 318 { | 318 { |
| 319 IDBKey* idbKey; | 319 IDBKey* idbKey; |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 | 387 |
| 388 class DataLoader; | 388 class DataLoader; |
| 389 | 389 |
| 390 class OpenCursorCallback final : public EventListener { | 390 class OpenCursorCallback final : public EventListener { |
| 391 public: | 391 public: |
| 392 static PassRefPtr<OpenCursorCallback> create(ScriptState* scriptState, PassR
efPtrWillBeRawPtr<RequestDataCallback> requestCallback, int skipCount, unsigned
pageSize) | 392 static PassRefPtr<OpenCursorCallback> create(ScriptState* scriptState, PassR
efPtrWillBeRawPtr<RequestDataCallback> requestCallback, int skipCount, unsigned
pageSize) |
| 393 { | 393 { |
| 394 return adoptRef(new OpenCursorCallback(scriptState, requestCallback, ski
pCount, pageSize)); | 394 return adoptRef(new OpenCursorCallback(scriptState, requestCallback, ski
pCount, pageSize)); |
| 395 } | 395 } |
| 396 | 396 |
| 397 virtual ~OpenCursorCallback() { } | 397 ~OpenCursorCallback() override { } |
| 398 | 398 |
| 399 virtual bool operator==(const EventListener& other) override | 399 bool operator==(const EventListener& other) override |
| 400 { | 400 { |
| 401 return this == &other; | 401 return this == &other; |
| 402 } | 402 } |
| 403 | 403 |
| 404 virtual void handleEvent(ExecutionContext*, Event* event) override | 404 void handleEvent(ExecutionContext*, Event* event) override |
| 405 { | 405 { |
| 406 if (event->type() != EventTypeNames::success) { | 406 if (event->type() != EventTypeNames::success) { |
| 407 m_requestCallback->sendFailure("Unexpected event type."); | 407 m_requestCallback->sendFailure("Unexpected event type."); |
| 408 return; | 408 return; |
| 409 } | 409 } |
| 410 | 410 |
| 411 IDBRequest* idbRequest = static_cast<IDBRequest*>(event->target()); | 411 IDBRequest* idbRequest = static_cast<IDBRequest*>(event->target()); |
| 412 IDBAny* requestResult = idbRequest->resultAsAny(); | 412 IDBAny* requestResult = idbRequest->resultAsAny(); |
| 413 if (requestResult->type() == IDBAny::IDBValueType) { | 413 if (requestResult->type() == IDBAny::IDBValueType) { |
| 414 end(false); | 414 end(false); |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 491 RefPtr<Array<DataEntry>> m_result; | 491 RefPtr<Array<DataEntry>> m_result; |
| 492 }; | 492 }; |
| 493 | 493 |
| 494 class DataLoader final : public ExecutableWithDatabase { | 494 class DataLoader final : public ExecutableWithDatabase { |
| 495 public: | 495 public: |
| 496 static PassRefPtr<DataLoader> create(ScriptState* scriptState, PassRefPtrWil
lBeRawPtr<RequestDataCallback> requestCallback, const String& objectStoreName, c
onst String& indexName, IDBKeyRange* idbKeyRange, int skipCount, unsigned pageSi
ze) | 496 static PassRefPtr<DataLoader> create(ScriptState* scriptState, PassRefPtrWil
lBeRawPtr<RequestDataCallback> requestCallback, const String& objectStoreName, c
onst String& indexName, IDBKeyRange* idbKeyRange, int skipCount, unsigned pageSi
ze) |
| 497 { | 497 { |
| 498 return adoptRef(new DataLoader(scriptState, requestCallback, objectStore
Name, indexName, idbKeyRange, skipCount, pageSize)); | 498 return adoptRef(new DataLoader(scriptState, requestCallback, objectStore
Name, indexName, idbKeyRange, skipCount, pageSize)); |
| 499 } | 499 } |
| 500 | 500 |
| 501 virtual ~DataLoader() { } | 501 ~DataLoader() override { } |
| 502 | 502 |
| 503 virtual void execute(IDBDatabase* idbDatabase) override | 503 void execute(IDBDatabase* idbDatabase) override |
| 504 { | 504 { |
| 505 if (!requestCallback()->isActive()) | 505 if (!requestCallback()->isActive()) |
| 506 return; | 506 return; |
| 507 IDBTransaction* idbTransaction = transactionForDatabase(scriptState(), i
dbDatabase, m_objectStoreName); | 507 IDBTransaction* idbTransaction = transactionForDatabase(scriptState(), i
dbDatabase, m_objectStoreName); |
| 508 if (!idbTransaction) { | 508 if (!idbTransaction) { |
| 509 m_requestCallback->sendFailure("Could not get transaction"); | 509 m_requestCallback->sendFailure("Could not get transaction"); |
| 510 return; | 510 return; |
| 511 } | 511 } |
| 512 IDBObjectStore* idbObjectStore = objectStoreForTransaction(idbTransactio
n, m_objectStoreName); | 512 IDBObjectStore* idbObjectStore = objectStoreForTransaction(idbTransactio
n, m_objectStoreName); |
| 513 if (!idbObjectStore) { | 513 if (!idbObjectStore) { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 525 return; | 525 return; |
| 526 } | 526 } |
| 527 | 527 |
| 528 idbRequest = idbIndex->openCursor(scriptState(), m_idbKeyRange.get()
, WebIDBCursorDirectionNext); | 528 idbRequest = idbIndex->openCursor(scriptState(), m_idbKeyRange.get()
, WebIDBCursorDirectionNext); |
| 529 } else { | 529 } else { |
| 530 idbRequest = idbObjectStore->openCursor(scriptState(), m_idbKeyRange
.get(), WebIDBCursorDirectionNext); | 530 idbRequest = idbObjectStore->openCursor(scriptState(), m_idbKeyRange
.get(), WebIDBCursorDirectionNext); |
| 531 } | 531 } |
| 532 idbRequest->addEventListener(EventTypeNames::success, openCursorCallback
, false); | 532 idbRequest->addEventListener(EventTypeNames::success, openCursorCallback
, false); |
| 533 } | 533 } |
| 534 | 534 |
| 535 virtual RequestCallback* requestCallback() override { return m_requestCallba
ck.get(); } | 535 RequestCallback* requestCallback() override { return m_requestCallback.get()
; } |
| 536 DataLoader(ScriptState* scriptState, PassRefPtrWillBeRawPtr<RequestDataCallb
ack> requestCallback, const String& objectStoreName, const String& indexName, ID
BKeyRange* idbKeyRange, int skipCount, unsigned pageSize) | 536 DataLoader(ScriptState* scriptState, PassRefPtrWillBeRawPtr<RequestDataCallb
ack> requestCallback, const String& objectStoreName, const String& indexName, ID
BKeyRange* idbKeyRange, int skipCount, unsigned pageSize) |
| 537 : ExecutableWithDatabase(scriptState) | 537 : ExecutableWithDatabase(scriptState) |
| 538 , m_requestCallback(requestCallback) | 538 , m_requestCallback(requestCallback) |
| 539 , m_objectStoreName(objectStoreName) | 539 , m_objectStoreName(objectStoreName) |
| 540 , m_indexName(indexName) | 540 , m_indexName(indexName) |
| 541 , m_idbKeyRange(idbKeyRange) | 541 , m_idbKeyRange(idbKeyRange) |
| 542 , m_skipCount(skipCount) | 542 , m_skipCount(skipCount) |
| 543 , m_pageSize(pageSize) | 543 , m_pageSize(pageSize) |
| 544 { | 544 { |
| 545 } | 545 } |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 685 } | 685 } |
| 686 | 686 |
| 687 class ClearObjectStoreListener final : public EventListener { | 687 class ClearObjectStoreListener final : public EventListener { |
| 688 WTF_MAKE_NONCOPYABLE(ClearObjectStoreListener); | 688 WTF_MAKE_NONCOPYABLE(ClearObjectStoreListener); |
| 689 public: | 689 public: |
| 690 static PassRefPtr<ClearObjectStoreListener> create(PassRefPtrWillBeRawPtr<Cl
earObjectStoreCallback> requestCallback) | 690 static PassRefPtr<ClearObjectStoreListener> create(PassRefPtrWillBeRawPtr<Cl
earObjectStoreCallback> requestCallback) |
| 691 { | 691 { |
| 692 return adoptRef(new ClearObjectStoreListener(requestCallback)); | 692 return adoptRef(new ClearObjectStoreListener(requestCallback)); |
| 693 } | 693 } |
| 694 | 694 |
| 695 virtual ~ClearObjectStoreListener() { } | 695 ~ClearObjectStoreListener() override { } |
| 696 | 696 |
| 697 virtual bool operator==(const EventListener& other) override | 697 bool operator==(const EventListener& other) override |
| 698 { | 698 { |
| 699 return this == &other; | 699 return this == &other; |
| 700 } | 700 } |
| 701 | 701 |
| 702 virtual void handleEvent(ExecutionContext*, Event* event) override | 702 void handleEvent(ExecutionContext*, Event* event) override |
| 703 { | 703 { |
| 704 if (!m_requestCallback->isActive()) | 704 if (!m_requestCallback->isActive()) |
| 705 return; | 705 return; |
| 706 if (event->type() != EventTypeNames::complete) { | 706 if (event->type() != EventTypeNames::complete) { |
| 707 m_requestCallback->sendFailure("Unexpected event type."); | 707 m_requestCallback->sendFailure("Unexpected event type."); |
| 708 return; | 708 return; |
| 709 } | 709 } |
| 710 | 710 |
| 711 m_requestCallback->sendSuccess(); | 711 m_requestCallback->sendSuccess(); |
| 712 } | 712 } |
| (...skipping 15 matching lines...) Expand all Loading... |
| 728 return adoptRef(new ClearObjectStore(scriptState, objectStoreName, reque
stCallback)); | 728 return adoptRef(new ClearObjectStore(scriptState, objectStoreName, reque
stCallback)); |
| 729 } | 729 } |
| 730 | 730 |
| 731 ClearObjectStore(ScriptState* scriptState, const String& objectStoreName, Pa
ssRefPtrWillBeRawPtr<ClearObjectStoreCallback> requestCallback) | 731 ClearObjectStore(ScriptState* scriptState, const String& objectStoreName, Pa
ssRefPtrWillBeRawPtr<ClearObjectStoreCallback> requestCallback) |
| 732 : ExecutableWithDatabase(scriptState) | 732 : ExecutableWithDatabase(scriptState) |
| 733 , m_objectStoreName(objectStoreName) | 733 , m_objectStoreName(objectStoreName) |
| 734 , m_requestCallback(requestCallback) | 734 , m_requestCallback(requestCallback) |
| 735 { | 735 { |
| 736 } | 736 } |
| 737 | 737 |
| 738 virtual void execute(IDBDatabase* idbDatabase) override | 738 void execute(IDBDatabase* idbDatabase) override |
| 739 { | 739 { |
| 740 if (!requestCallback()->isActive()) | 740 if (!requestCallback()->isActive()) |
| 741 return; | 741 return; |
| 742 IDBTransaction* idbTransaction = transactionForDatabase(scriptState(), i
dbDatabase, m_objectStoreName, IndexedDBNames::readwrite); | 742 IDBTransaction* idbTransaction = transactionForDatabase(scriptState(), i
dbDatabase, m_objectStoreName, IndexedDBNames::readwrite); |
| 743 if (!idbTransaction) { | 743 if (!idbTransaction) { |
| 744 m_requestCallback->sendFailure("Could not get transaction"); | 744 m_requestCallback->sendFailure("Could not get transaction"); |
| 745 return; | 745 return; |
| 746 } | 746 } |
| 747 IDBObjectStore* idbObjectStore = objectStoreForTransaction(idbTransactio
n, m_objectStoreName); | 747 IDBObjectStore* idbObjectStore = objectStoreForTransaction(idbTransactio
n, m_objectStoreName); |
| 748 if (!idbObjectStore) { | 748 if (!idbObjectStore) { |
| 749 m_requestCallback->sendFailure("Could not get object store"); | 749 m_requestCallback->sendFailure("Could not get object store"); |
| 750 return; | 750 return; |
| 751 } | 751 } |
| 752 | 752 |
| 753 TrackExceptionState exceptionState; | 753 TrackExceptionState exceptionState; |
| 754 idbObjectStore->clear(scriptState(), exceptionState); | 754 idbObjectStore->clear(scriptState(), exceptionState); |
| 755 ASSERT(!exceptionState.hadException()); | 755 ASSERT(!exceptionState.hadException()); |
| 756 if (exceptionState.hadException()) { | 756 if (exceptionState.hadException()) { |
| 757 ExceptionCode ec = exceptionState.code(); | 757 ExceptionCode ec = exceptionState.code(); |
| 758 m_requestCallback->sendFailure(String::format("Could not clear objec
t store '%s': %d", m_objectStoreName.utf8().data(), ec)); | 758 m_requestCallback->sendFailure(String::format("Could not clear objec
t store '%s': %d", m_objectStoreName.utf8().data(), ec)); |
| 759 return; | 759 return; |
| 760 } | 760 } |
| 761 idbTransaction->addEventListener(EventTypeNames::complete, ClearObjectSt
oreListener::create(m_requestCallback), false); | 761 idbTransaction->addEventListener(EventTypeNames::complete, ClearObjectSt
oreListener::create(m_requestCallback), false); |
| 762 } | 762 } |
| 763 | 763 |
| 764 virtual RequestCallback* requestCallback() override { return m_requestCallba
ck.get(); } | 764 RequestCallback* requestCallback() override { return m_requestCallback.get()
; } |
| 765 private: | 765 private: |
| 766 const String m_objectStoreName; | 766 const String m_objectStoreName; |
| 767 RefPtrWillBePersistent<ClearObjectStoreCallback> m_requestCallback; | 767 RefPtrWillBePersistent<ClearObjectStoreCallback> m_requestCallback; |
| 768 }; | 768 }; |
| 769 | 769 |
| 770 void InspectorIndexedDBAgent::clearObjectStore(ErrorString* errorString, const S
tring& securityOrigin, const String& databaseName, const String& objectStoreName
, PassRefPtrWillBeRawPtr<ClearObjectStoreCallback> requestCallback) | 770 void InspectorIndexedDBAgent::clearObjectStore(ErrorString* errorString, const S
tring& securityOrigin, const String& databaseName, const String& objectStoreName
, PassRefPtrWillBeRawPtr<ClearObjectStoreCallback> requestCallback) |
| 771 { | 771 { |
| 772 LocalFrame* frame = findFrameWithSecurityOrigin(m_page, securityOrigin); | 772 LocalFrame* frame = findFrameWithSecurityOrigin(m_page, securityOrigin); |
| 773 Document* document = assertDocument(errorString, frame); | 773 Document* document = assertDocument(errorString, frame); |
| 774 if (!document) | 774 if (!document) |
| 775 return; | 775 return; |
| 776 IDBFactory* idbFactory = assertIDBFactory(errorString, document); | 776 IDBFactory* idbFactory = assertIDBFactory(errorString, document); |
| 777 if (!idbFactory) | 777 if (!idbFactory) |
| 778 return; | 778 return; |
| 779 | 779 |
| 780 ScriptState* scriptState = ScriptState::forMainWorld(frame); | 780 ScriptState* scriptState = ScriptState::forMainWorld(frame); |
| 781 ScriptState::Scope scope(scriptState); | 781 ScriptState::Scope scope(scriptState); |
| 782 RefPtr<ClearObjectStore> clearObjectStore = ClearObjectStore::create(scriptS
tate, objectStoreName, requestCallback); | 782 RefPtr<ClearObjectStore> clearObjectStore = ClearObjectStore::create(scriptS
tate, objectStoreName, requestCallback); |
| 783 clearObjectStore->start(idbFactory, document->securityOrigin(), databaseName
); | 783 clearObjectStore->start(idbFactory, document->securityOrigin(), databaseName
); |
| 784 } | 784 } |
| 785 | 785 |
| 786 DEFINE_TRACE(InspectorIndexedDBAgent) | 786 DEFINE_TRACE(InspectorIndexedDBAgent) |
| 787 { | 787 { |
| 788 visitor->trace(m_page); | 788 visitor->trace(m_page); |
| 789 InspectorBaseAgent::trace(visitor); | 789 InspectorBaseAgent::trace(visitor); |
| 790 } | 790 } |
| 791 | 791 |
| 792 } // namespace blink | 792 } // namespace blink |
| OLD | NEW |