void IDBRequest::onSuccess(const Vector<RefPtr<IDBValue>>& values) { IDB_TRACE("IDBRequest::onSuccess([IDBValue])"); if (!shouldEnqueueEvent()) return; ackReceivedBlobs(values); onSuccessInternal(IDBAny::create(values)); }
void IDBRequest::onSuccess(IDBKey* key, IDBKey* primaryKey, PassRefPtr<IDBValue> value) { IDB_TRACE("IDBRequest::onSuccess(key, primaryKey, value)"); if (!shouldEnqueueEvent()) return; ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value); }
void IDBRequest::onSuccess(IDBKey* key, IDBKey* primaryKey, PassRefPtr<SharedBuffer> value, PassOwnPtr<Vector<WebBlobInfo> > blobInfo) { IDB_TRACE("IDBRequest::onSuccess(key, primaryKey, value)"); if (!shouldEnqueueEvent()) return; ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value, blobInfo); }
void IDBRequest::onSuccess(PassRefPtr<DOMStringList> domStringList) { IDB_TRACE("IDBRequest::onSuccess(DOMStringList)"); if (!shouldEnqueueEvent()) return; m_result = IDBAny::create(domStringList); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SerializedScriptValue> serializedScriptValue) { IDB_TRACE("IDBRequest::onSuccess(SerializedScriptValue)"); if (!shouldEnqueueEvent()) return; ScriptValue value = deserializeIDBValue(scriptExecutionContext(), serializedScriptValue); onSuccessInternal(value); }
void LegacyRequest::onSuccess(PassRefPtr<DOMStringList> domStringList) { LOG(StorageAPI, "LegacyRequest::onSuccess(DOMStringList)"); if (!shouldEnqueueEvent()) return; m_result = LegacyAny::create(domStringList); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> valueBuffer) { IDB_TRACE("IDBRequest::onSuccess(SharedBuffer)"); if (!shouldEnqueueEvent()) return; DOMRequestState::Scope scope(m_requestState); ScriptValue value = deserializeIDBValueBuffer(requestState(), valueBuffer); onSuccessInternal(value); }
void IDBRequest::onSuccess(PassRefPtr<SerializedScriptValue> serializedScriptValue) { IDB_TRACE("IDBRequest::onSuccess(SerializedScriptValue)"); if (!shouldEnqueueEvent()) return; DOMRequestState::Scope scope(m_requestState); ScriptValue value = deserializeIDBValue(requestState(), serializedScriptValue); onSuccessInternal(value); }
void IDBRequest::onError(PassRefPtr<DOMError> error) { IDB_TRACE("IDBRequest::onError()"); if (!shouldEnqueueEvent()) return; m_error = error; m_pendingCursor.clear(); enqueueEvent(Event::createCancelableBubble(EventTypeNames::error)); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> key, PassRefPtr<IDBKey> primaryKey, PassRefPtr<SerializedScriptValue> serializedValue) { IDB_TRACE("IDBRequest::onSuccess(key, primaryKey, value)"); if (!shouldEnqueueEvent()) return; ScriptValue value = deserializeIDBValue(scriptExecutionContext(), serializedValue); ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(const Vector<String>& stringList) { IDB_TRACE("IDBRequest::onSuccess(StringList)"); if (!shouldEnqueueEvent()) return; RefPtr<DOMStringList> domStringList = DOMStringList::create(); for (size_t i = 0; i < stringList.size(); ++i) domStringList->append(stringList[i]); onSuccessInternal(IDBAny::create(domStringList.release())); }
void IDBRequest::onError(DOMError* error) { IDB_TRACE("IDBRequest::onError()"); if (!shouldEnqueueEvent()) return; m_error = error; setResult(IDBAny::createUndefined()); m_pendingCursor.clear(); enqueueEvent(Event::createCancelableBubble(EventTypeNames::error)); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> idbKey) { IDB_TRACE("IDBRequest::onSuccess(IDBKey)"); if (!shouldEnqueueEvent()) return; if (idbKey && idbKey->isValid()) onSuccessInternal(IDBAny::create(idbKey)); else onSuccessInternal(IDBAny::createUndefined()); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> key, PassRefPtr<IDBKey> primaryKey, PassRefPtr<SharedBuffer> buffer) { IDB_TRACE("IDBRequest::onSuccess(key, primaryKey, value)"); if (!shouldEnqueueEvent()) return; DOMRequestState::Scope scope(m_requestState); ScriptValue value = deserializeIDBValueBuffer(requestState(), buffer); ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value); enqueueEvent(createSuccessEvent()); }
void IDBOpenDBRequest::onSuccess(int64_t oldVersion) { IDB_TRACE("IDBOpenDBRequest::onSuccess()"); if (!shouldEnqueueEvent()) return; if (oldVersion == IDBDatabaseMetadata::NoIntVersion) { // This database hasn't had an integer version before. oldVersion = IDBDatabaseMetadata::DefaultIntVersion; } setResult(IDBAny::createUndefined()); enqueueEvent(IDBVersionChangeEvent::create(EventTypeNames::success, oldVersion, Nullable<unsigned long long>())); }
void IDBRequest::onError(PassRefPtr<IDBDatabaseError> error) { LOG(StorageAPI, "IDBRequest::onError() (%s) '%s'", error->name().utf8().data(), error->message().utf8().data()); if (!shouldEnqueueEvent()) return; m_errorCode = error->code(); m_errorMessage = error->message(); m_error = DOMError::create(IDBDatabaseException::getErrorName(error->idbCode())); m_pendingCursor.clear(); enqueueEvent(Event::create(eventNames().errorEvent, true, true)); }
void IDBRequest::onError(PassRefPtr<IDBDatabaseError> error) { IDB_TRACE("IDBRequest::onError()"); if (!shouldEnqueueEvent()) return; m_errorCode = error->code(); m_errorMessage = error->message(); m_error = DOMError::create(IDBDatabaseException::getErrorName(error->idbCode())); m_pendingCursor.clear(); enqueueEvent(Event::create(eventNames().errorEvent, true, true)); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> idbKey) { IDB_TRACE("IDBRequest::onSuccess(IDBKey)"); if (!shouldEnqueueEvent()) return; if (idbKey && idbKey->isValid()) m_result = IDBAny::create(idbKey); else m_result = IDBAny::createInvalid(); enqueueEvent(createSuccessEvent()); }
void LegacyRequest::onSuccess(PassRefPtr<IDBKey> idbKey) { LOG(StorageAPI, "LegacyRequest::onSuccess(IDBKey)"); if (!shouldEnqueueEvent()) return; if (idbKey && idbKey->isValid()) { DOMRequestState::Scope scope(m_requestState); m_result = LegacyAny::create(idbKeyToScriptValue(requestState(), idbKey)); } else m_result = LegacyAny::createInvalid(); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> idbKey) { IDB_TRACE("IDBRequest::onSuccess(IDBKey)"); if (!shouldEnqueueEvent()) return; if (idbKey && idbKey->isValid()) { DOMRequestState::Scope scope(m_requestState); m_result = IDBAny::create(idbKeyToScriptValue(requestState(), idbKey)); } else m_result = IDBAny::createInvalid(); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> valueBuffer) { LOG(StorageAPI, "IDBRequest::onSuccess(SharedBuffer)"); if (!shouldEnqueueEvent()) return; DOMRequestState::Scope scope(m_requestState); // FIXME: By not knowing whether or not the key is defined here, we don't know // if a null valueBuffer means the value is null or the value is undefined. Deprecated::ScriptValue value = deserializeIDBValueBuffer(requestState(), valueBuffer, true); onSuccessInternal(value); }
void LegacyRequest::onSuccess(PassRefPtr<IDBKey> key, PassRefPtr<IDBKey> primaryKey, PassRefPtr<SharedBuffer> buffer) { LOG(StorageAPI, "LegacyRequest::onSuccess(key, primaryKey, valueBuffer)"); if (!shouldEnqueueEvent()) return; DOMRequestState::Scope scope(m_requestState); Deprecated::ScriptValue value = deserializeIDBValueBuffer(requestState(), buffer, !!key); ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> valueBuffer) { IDB_TRACE("IDBRequest::onSuccess(SharedBuffer)"); if (!shouldEnqueueEvent()) return; if (m_pendingCursor) { // Value should be null, signifying the end of the cursor's range. ASSERT(!valueBuffer.get()); m_pendingCursor->close(); m_pendingCursor.clear(); } onSuccessInternal(IDBAny::create(valueBuffer)); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> valueBuffer, PassOwnPtr<Vector<WebBlobInfo> > blobInfo) { IDB_TRACE("IDBRequest::onSuccess(SharedBuffer)"); if (!shouldEnqueueEvent()) return; if (m_pendingCursor) { // Value should be null, signifying the end of the cursor's range. ASSERT(!valueBuffer.get()); ASSERT(!blobInfo->size()); m_pendingCursor->close(); m_pendingCursor.clear(); } setBlobInfo(blobInfo); onSuccessInternal(IDBAny::create(valueBuffer, m_blobInfo.get())); }
void IDBRequest::onSuccess(PassRefPtr<IDBCursorBackendInterface> backend, PassRefPtr<IDBKey> key, PassRefPtr<IDBKey> primaryKey, PassRefPtr<SerializedScriptValue> serializedValue) { IDB_TRACE("IDBRequest::onSuccess(IDBCursor)"); if (!shouldEnqueueEvent()) return; ScriptValue value = deserializeIDBValue(scriptExecutionContext(), serializedValue); ASSERT(m_cursorType != IDBCursorBackendInterface::InvalidCursorType); RefPtr<IDBCursor> cursor; if (m_cursorType == IDBCursorBackendInterface::IndexKeyCursor) cursor = IDBCursor::create(backend, m_cursorDirection, this, m_source.get(), m_transaction.get()); else cursor = IDBCursorWithValue::create(backend, m_cursorDirection, this, m_source.get(), m_transaction.get()); setResultCursor(cursor, key, primaryKey, value); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SerializedScriptValue> serializedScriptValue) { IDB_TRACE("IDBRequest::onSuccess(SerializedScriptValue)"); if (!shouldEnqueueEvent()) return; #if USE(V8) v8::HandleScope handleScope; v8::Local<v8::Context> context = toV8Context(scriptExecutionContext(), m_worldContextHandle); if (context.IsEmpty()) CRASH(); v8::Context::Scope contextScope(context); #endif ScriptValue value = deserializeIDBValue(scriptExecutionContext(), serializedScriptValue); onSuccessInternal(value); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> prpValueBuffer, PassOwnPtr<Vector<WebBlobInfo> > blobInfo, IDBKey* prpPrimaryKey, const IDBKeyPath& keyPath) { IDB_TRACE("IDBRequest::onSuccess(SharedBuffer, IDBKey, IDBKeyPath)"); if (!shouldEnqueueEvent()) return; ASSERT(keyPath == effectiveObjectStore(m_source)->metadata().keyPath); RefPtr<SharedBuffer> valueBuffer = prpValueBuffer; IDBKey* primaryKey = prpPrimaryKey; setBlobInfo(blobInfo); #if ENABLE(ASSERT) assertPrimaryKeyValidOrInjectable(m_scriptState.get(), valueBuffer, m_blobInfo.get(), primaryKey, keyPath); #endif onSuccessInternal(IDBAny::create(valueBuffer, m_blobInfo.get(), primaryKey, keyPath)); }
void IDBRequest::onSuccess(PassRefPtr<SharedBuffer> prpValueBuffer, PassRefPtr<IDBKey> prpPrimaryKey, const IDBKeyPath& keyPath) { IDB_TRACE("IDBRequest::onSuccess(SharedBuffer, IDBKey, IDBKeyPath)"); if (!shouldEnqueueEvent()) return; #ifndef NDEBUG ASSERT(keyPath == effectiveObjectStore(m_source)->metadata().keyPath); #endif RefPtr<SharedBuffer> valueBuffer = prpValueBuffer; RefPtr<IDBKey> primaryKey = prpPrimaryKey; #ifndef NDEBUG assertPrimaryKeyValidOrInjectable(&m_requestState, valueBuffer, primaryKey, keyPath); #endif onSuccessInternal(IDBAny::create(valueBuffer, primaryKey, keyPath)); }
void IDBRequest::onSuccess(PassRefPtr<IDBKey> key, PassRefPtr<IDBKey> primaryKey, PassRefPtr<SerializedScriptValue> serializedValue) { IDB_TRACE("IDBRequest::onSuccess(key, primaryKey, value)"); if (!shouldEnqueueEvent()) return; #if USE(V8) v8::HandleScope handleScope; v8::Local<v8::Context> context = toV8Context(scriptExecutionContext(), m_worldContextHandle); if (context.IsEmpty()) CRASH(); v8::Context::Scope contextScope(context); #endif ScriptValue value = deserializeIDBValue(scriptExecutionContext(), serializedValue); ASSERT(m_pendingCursor); setResultCursor(m_pendingCursor.release(), key, primaryKey, value); enqueueEvent(createSuccessEvent()); }
void IDBRequest::onSuccess(PassRefPtr<SerializedScriptValue> prpSerializedScriptValue, PassRefPtr<IDBKey> prpPrimaryKey, const IDBKeyPath& keyPath) { IDB_TRACE("IDBRequest::onSuccess(SerializedScriptValue, IDBKey, IDBKeyPath)"); if (!shouldEnqueueEvent()) return; #ifndef NDEBUG ASSERT(keyPath == effectiveObjectStore(m_source)->keyPath()); #endif ScriptValue value = deserializeIDBValue(scriptExecutionContext(), prpSerializedScriptValue); RefPtr<IDBKey> primaryKey = prpPrimaryKey; #ifndef NDEBUG RefPtr<IDBKey> expectedKey = createIDBKeyFromScriptValueAndKeyPath(value, keyPath); ASSERT(!expectedKey || expectedKey->isEqual(primaryKey.get())); #endif bool injected = injectIDBKeyIntoScriptValue(primaryKey, value, keyPath); ASSERT_UNUSED(injected, injected); onSuccessInternal(value); }