Diff
Modified: trunk/Source/WebCore/ChangeLog (189812 => 189813)
--- trunk/Source/WebCore/ChangeLog 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/ChangeLog 2015-09-15 18:09:29 UTC (rev 189813)
@@ -1,5 +1,51 @@
2015-09-15 Brady Eidson <beid...@apple.com>
+ Make the IDBAny::Type enum into an enum class.
+ https://bugs.webkit.org/show_bug.cgi?id=149169.
+
+ Reviewed by Oliver Hunt.
+
+ No new tests (Cleanup, no behavior change).
+
+ * Modules/indexeddb/IDBAny.h:
+ * Modules/indexeddb/legacy/LegacyAny.cpp:
+ (WebCore::LegacyAny::createInvalid):
+ (WebCore::LegacyAny::createNull):
+ (WebCore::LegacyAny::LegacyAny):
+ (WebCore::LegacyAny::domStringList):
+ (WebCore::LegacyAny::idbCursor):
+ (WebCore::LegacyAny::idbCursorWithValue):
+ (WebCore::LegacyAny::idbDatabase):
+ (WebCore::LegacyAny::idbFactory):
+ (WebCore::LegacyAny::idbIndex):
+ (WebCore::LegacyAny::idbObjectStore):
+ (WebCore::LegacyAny::idbTransaction):
+ (WebCore::LegacyAny::scriptValue):
+ (WebCore::LegacyAny::string):
+ (WebCore::LegacyAny::integer):
+ (WebCore::LegacyAny::legacyCursor):
+ (WebCore::LegacyAny::legacyCursorWithValue):
+ (WebCore::LegacyAny::legacyDatabase):
+ (WebCore::LegacyAny::legacyFactory):
+ (WebCore::LegacyAny::legacyIndex):
+ (WebCore::LegacyAny::legacyObjectStore):
+ (WebCore::LegacyAny::legacyTransaction):
+ * Modules/indexeddb/legacy/LegacyCursor.cpp:
+ (WebCore::LegacyCursor::LegacyCursor):
+ (WebCore::LegacyCursor::effectiveObjectStore):
+ * Modules/indexeddb/legacy/LegacyObjectStore.cpp:
+ * Modules/indexeddb/legacy/LegacyOpenDBRequest.cpp:
+ (WebCore::LegacyOpenDBRequest::dispatchEvent):
+ * Modules/indexeddb/legacy/LegacyRequest.cpp:
+ (WebCore::LegacyRequest::getResultCursor):
+ (WebCore::effectiveObjectStore):
+ * bindings/js/JSIDBAnyCustom.cpp:
+ (WebCore::toJS):
+ * inspector/InspectorIndexedDBAgent.cpp:
+ * page/DatabaseProvider.h:
+
+2015-09-15 Brady Eidson <beid...@apple.com>
+
Move most IDB object encoding/decoding from WebKit2 to WebCore.
https://bugs.webkit.org/show_bug.cgi?id=149152
Modified: trunk/Source/WebCore/Modules/indexeddb/IDBAny.h (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/IDBAny.h 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBAny.h 2015-09-15 18:09:29 UTC (rev 189813)
@@ -52,21 +52,21 @@
public:
virtual ~IDBAny() { }
- enum Type {
- UndefinedType = 0,
- NullType,
- DOMStringListType,
- IDBCursorType,
- IDBCursorWithValueType,
- IDBDatabaseType,
- IDBFactoryType,
- IDBIndexType,
- IDBObjectStoreType,
- IDBTransactionType,
- ScriptValueType,
- IntegerType,
- StringType,
- KeyPathType,
+ enum class Type {
+ Undefined = 0,
+ Null,
+ DOMStringList,
+ IDBCursor,
+ IDBCursorWithValue,
+ IDBDatabase,
+ IDBFactory,
+ IDBIndex,
+ IDBObjectStore,
+ IDBTransaction,
+ ScriptValue,
+ Integer,
+ String,
+ KeyPath,
};
virtual Type type() const = 0;
Modified: trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyAny.cpp (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyAny.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyAny.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -40,12 +40,12 @@
PassRefPtr<LegacyAny> LegacyAny::createInvalid()
{
- return adoptRef(new LegacyAny(UndefinedType));
+ return adoptRef(new LegacyAny(Type::Undefined));
}
PassRefPtr<LegacyAny> LegacyAny::createNull()
{
- return adoptRef(new LegacyAny(NullType));
+ return adoptRef(new LegacyAny(Type::Null));
}
PassRefPtr<LegacyAny> LegacyAny::createString(const String& value)
@@ -57,7 +57,7 @@
: m_type(type)
, m_integer(0)
{
- ASSERT(type == UndefinedType || type == NullType);
+ ASSERT(type == Type::Undefined || type == Type::Null);
}
LegacyAny::~LegacyAny()
@@ -66,192 +66,192 @@
PassRefPtr<DOMStringList> LegacyAny::domStringList()
{
- ASSERT(m_type == DOMStringListType);
+ ASSERT(m_type == Type::DOMStringList);
return m_domStringList;
}
PassRefPtr<IDBCursor> LegacyAny::idbCursor()
{
- ASSERT(m_type == IDBCursorType);
+ ASSERT(m_type == Type::IDBCursor);
return m_idbCursor;
}
PassRefPtr<IDBCursorWithValue> LegacyAny::idbCursorWithValue()
{
- ASSERT(m_type == IDBCursorWithValueType);
+ ASSERT(m_type == Type::IDBCursorWithValue);
return m_idbCursorWithValue;
}
PassRefPtr<IDBDatabase> LegacyAny::idbDatabase()
{
- ASSERT(m_type == IDBDatabaseType);
+ ASSERT(m_type == Type::IDBDatabase);
return m_idbDatabase;
}
PassRefPtr<IDBFactory> LegacyAny::idbFactory()
{
- ASSERT(m_type == IDBFactoryType);
+ ASSERT(m_type == Type::IDBFactory);
return m_idbFactory;
}
PassRefPtr<IDBIndex> LegacyAny::idbIndex()
{
- ASSERT(m_type == IDBIndexType);
+ ASSERT(m_type == Type::IDBIndex);
return m_idbIndex;
}
PassRefPtr<IDBObjectStore> LegacyAny::idbObjectStore()
{
- ASSERT(m_type == IDBObjectStoreType);
+ ASSERT(m_type == Type::IDBObjectStore);
return m_idbObjectStore;
}
PassRefPtr<IDBTransaction> LegacyAny::idbTransaction()
{
- ASSERT(m_type == IDBTransactionType);
+ ASSERT(m_type == Type::IDBTransaction);
return m_idbTransaction;
}
const Deprecated::ScriptValue& LegacyAny::scriptValue()
{
- ASSERT(m_type == ScriptValueType);
+ ASSERT(m_type == Type::ScriptValue);
return m_scriptValue;
}
const String& LegacyAny::string()
{
- ASSERT(m_type == StringType);
+ ASSERT(m_type == Type::String);
return m_string;
}
int64_t LegacyAny::integer()
{
- ASSERT(m_type == IntegerType);
+ ASSERT(m_type == Type::Integer);
return m_integer;
}
LegacyAny::LegacyAny(PassRefPtr<DOMStringList> value)
- : m_type(DOMStringListType)
+ : m_type(Type::DOMStringList)
, m_domStringList(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyCursorWithValue> value)
- : m_type(IDBCursorWithValueType)
+ : m_type(Type::IDBCursorWithValue)
, m_idbCursorWithValue(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyCursor> value)
- : m_type(IDBCursorType)
+ : m_type(Type::IDBCursor)
, m_idbCursor(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyDatabase> value)
- : m_type(IDBDatabaseType)
+ : m_type(Type::IDBDatabase)
, m_idbDatabase(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyFactory> value)
- : m_type(IDBFactoryType)
+ : m_type(Type::IDBFactory)
, m_idbFactory(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyIndex> value)
- : m_type(IDBIndexType)
+ : m_type(Type::IDBIndex)
, m_idbIndex(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyTransaction> value)
- : m_type(IDBTransactionType)
+ : m_type(Type::IDBTransaction)
, m_idbTransaction(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(PassRefPtr<LegacyObjectStore> value)
- : m_type(IDBObjectStoreType)
+ : m_type(Type::IDBObjectStore)
, m_idbObjectStore(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(const Deprecated::ScriptValue& value)
- : m_type(ScriptValueType)
+ : m_type(Type::ScriptValue)
, m_scriptValue(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(const IDBKeyPath& value)
- : m_type(KeyPathType)
+ : m_type(Type::KeyPath)
, m_idbKeyPath(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(const String& value)
- : m_type(StringType)
+ : m_type(Type::String)
, m_string(value)
, m_integer(0)
{
}
LegacyAny::LegacyAny(int64_t value)
- : m_type(IntegerType)
+ : m_type(Type::Integer)
, m_integer(value)
{
}
LegacyCursor* LegacyAny::legacyCursor()
{
- ASSERT(m_type == IDBCursorType);
+ ASSERT(m_type == Type::IDBCursor);
return m_idbCursor.get();
}
LegacyCursorWithValue* LegacyAny::legacyCursorWithValue()
{
- ASSERT(m_type == IDBCursorWithValueType);
+ ASSERT(m_type == Type::IDBCursorWithValue);
return m_idbCursorWithValue.get();
}
LegacyDatabase* LegacyAny::legacyDatabase()
{
- ASSERT(m_type == IDBDatabaseType);
+ ASSERT(m_type == Type::IDBDatabase);
return m_idbDatabase.get();
}
LegacyFactory* LegacyAny::legacyFactory()
{
- ASSERT(m_type == IDBFactoryType);
+ ASSERT(m_type == Type::IDBFactory);
return m_idbFactory.get();
}
LegacyIndex* LegacyAny::legacyIndex()
{
- ASSERT(m_type == IDBIndexType);
+ ASSERT(m_type == Type::IDBIndex);
return m_idbIndex.get();
}
LegacyObjectStore* LegacyAny::legacyObjectStore()
{
- ASSERT(m_type == IDBObjectStoreType);
+ ASSERT(m_type == Type::IDBObjectStore);
return m_idbObjectStore.get();
}
LegacyTransaction* LegacyAny::legacyTransaction()
{
- ASSERT(m_type == IDBTransactionType);
+ ASSERT(m_type == Type::IDBTransaction);
return m_idbTransaction.get();
}
Modified: trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyCursor.cpp (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyCursor.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyCursor.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -59,7 +59,7 @@
{
ASSERT(m_backend);
ASSERT(m_request);
- ASSERT(m_source->type() == IDBAny::IDBObjectStoreType || m_source->type() == IDBAny::IDBIndexType);
+ ASSERT(m_source->type() == IDBAny::Type::IDBObjectStore || m_source->type() == IDBAny::Type::IDBIndex);
ASSERT(m_transaction);
}
@@ -266,7 +266,7 @@
PassRefPtr<LegacyObjectStore> LegacyCursor::effectiveObjectStore()
{
- if (m_source->type() == IDBAny::IDBObjectStoreType)
+ if (m_source->type() == IDBAny::Type::IDBObjectStore)
return m_source->legacyObjectStore();
RefPtr<LegacyIndex> index = m_source->legacyIndex();
return index->legacyObjectStore();
Modified: trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyObjectStore.cpp (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyObjectStore.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyObjectStore.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -310,7 +310,7 @@
RefPtr<LegacyAny> cursorAny = request->legacyResult(ASSERT_NO_EXCEPTION);
RefPtr<LegacyCursorWithValue> cursor;
- if (cursorAny->type() == IDBAny::IDBCursorWithValueType)
+ if (cursorAny->type() == IDBAny::Type::IDBCursorWithValue)
cursor = cursorAny->legacyCursorWithValue();
Vector<int64_t, 1> indexIds;
Modified: trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyOpenDBRequest.cpp (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyOpenDBRequest.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyOpenDBRequest.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -142,7 +142,7 @@
{
// If the connection closed between onUpgradeNeeded and the delivery of the "success" event,
// an "error" event should be fired instead.
- if (event->type() == eventNames().successEvent && m_result->type() == IDBAny::IDBDatabaseType && m_result->legacyDatabase()->isClosePending()) {
+ if (event->type() == eventNames().successEvent && m_result->type() == IDBAny::Type::IDBDatabase && m_result->legacyDatabase()->isClosePending()) {
m_result = nullptr;
onError(IDBDatabaseError::create(IDBDatabaseException::AbortError, "The connection was closed."));
return false;
Modified: trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyRequest.cpp (189812 => 189813)
--- trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyRequest.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/Modules/indexeddb/legacy/LegacyRequest.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -209,9 +209,9 @@
{
if (!m_result)
return nullptr;
- if (m_result->type() == IDBAny::IDBCursorType)
+ if (m_result->type() == IDBAny::Type::IDBCursor)
return m_result->legacyCursor();
- if (m_result->type() == IDBAny::IDBCursorWithValueType)
+ if (m_result->type() == IDBAny::Type::IDBCursorWithValue)
return m_result->legacyCursorWithValue();
return nullptr;
}
@@ -340,9 +340,9 @@
#ifndef NDEBUG
static PassRefPtr<IDBObjectStore> effectiveObjectStore(LegacyAny* source)
{
- if (source->type() == IDBAny::IDBObjectStoreType)
+ if (source->type() == IDBAny::Type::IDBObjectStore)
return source->idbObjectStore();
- if (source->type() == IDBAny::IDBIndexType)
+ if (source->type() == IDBAny::Type::IDBIndex)
return source->idbIndex()->objectStore();
ASSERT_NOT_REACHED();
Modified: trunk/Source/WebCore/bindings/js/JSIDBAnyCustom.cpp (189812 => 189813)
--- trunk/Source/WebCore/bindings/js/JSIDBAnyCustom.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/bindings/js/JSIDBAnyCustom.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -77,33 +77,33 @@
return jsNull();
switch (idbAny->type()) {
- case IDBAny::UndefinedType:
+ case IDBAny::Type::Undefined:
return jsUndefined();
- case IDBAny::NullType:
+ case IDBAny::Type::Null:
return jsNull();
- case IDBAny::DOMStringListType:
+ case IDBAny::Type::DOMStringList:
return toJS(exec, globalObject, idbAny->domStringList());
- case IDBAny::IDBCursorType:
+ case IDBAny::Type::IDBCursor:
return toJS(exec, globalObject, idbAny->idbCursor());
- case IDBAny::IDBCursorWithValueType:
+ case IDBAny::Type::IDBCursorWithValue:
return wrap<JSIDBCursorWithValue>(globalObject, idbAny->idbCursorWithValue().get());
- case IDBAny::IDBDatabaseType:
+ case IDBAny::Type::IDBDatabase:
return toJS(exec, globalObject, idbAny->idbDatabase());
- case IDBAny::IDBFactoryType:
+ case IDBAny::Type::IDBFactory:
return toJS(exec, globalObject, idbAny->idbFactory());
- case IDBAny::IDBIndexType:
+ case IDBAny::Type::IDBIndex:
return toJS(exec, globalObject, idbAny->idbIndex());
- case IDBAny::IDBObjectStoreType:
+ case IDBAny::Type::IDBObjectStore:
return toJS(exec, globalObject, idbAny->idbObjectStore());
- case IDBAny::IDBTransactionType:
+ case IDBAny::Type::IDBTransaction:
return toJS(exec, globalObject, idbAny->idbTransaction());
- case IDBAny::ScriptValueType:
+ case IDBAny::Type::ScriptValue:
return idbAny->scriptValue().jsValue();
- case IDBAny::StringType:
+ case IDBAny::Type::String:
return jsStringWithCache(exec, idbAny->string());
- case IDBAny::IntegerType:
+ case IDBAny::Type::Integer:
return jsNumber(idbAny->integer());
- case IDBAny::KeyPathType:
+ case IDBAny::Type::KeyPath:
return toJS(exec, globalObject, idbAny->keyPath());
}
Modified: trunk/Source/WebCore/inspector/InspectorIndexedDBAgent.cpp (189812 => 189813)
--- trunk/Source/WebCore/inspector/InspectorIndexedDBAgent.cpp 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/inspector/InspectorIndexedDBAgent.cpp 2015-09-15 18:09:29 UTC (rev 189813)
@@ -122,7 +122,7 @@
m_requestCallback->sendFailure("Could not get result in callback.");
return;
}
- if (requestResult->type() != IDBAny::DOMStringListType) {
+ if (requestResult->type() != IDBAny::Type::DOMStringList) {
m_requestCallback->sendFailure("Unexpected result type.");
return;
}
@@ -184,7 +184,7 @@
m_executableWithDatabase->requestCallback().sendFailure("Could not get result in callback.");
return;
}
- if (requestResult->type() != IDBAny::IDBDatabaseType) {
+ if (requestResult->type() != IDBAny::Type::IDBDatabase) {
m_executableWithDatabase->requestCallback().sendFailure("Unexpected result type.");
return;
}
@@ -439,11 +439,11 @@
m_requestCallback->sendFailure("Could not get result in callback.");
return;
}
- if (requestResult->type() == IDBAny::ScriptValueType) {
+ if (requestResult->type() == IDBAny::Type::ScriptValue) {
end(false);
return;
}
- if (requestResult->type() != IDBAny::IDBCursorWithValueType) {
+ if (requestResult->type() != IDBAny::Type::IDBCursorWithValue) {
m_requestCallback->sendFailure("Unexpected result type.");
return;
}
Modified: trunk/Source/WebCore/page/DatabaseProvider.h (189812 => 189813)
--- trunk/Source/WebCore/page/DatabaseProvider.h 2015-09-15 17:48:58 UTC (rev 189812)
+++ trunk/Source/WebCore/page/DatabaseProvider.h 2015-09-15 18:09:29 UTC (rev 189813)
@@ -31,6 +31,7 @@
namespace WebCore {
+class IDBConnectionManager;
class IDBFactoryBackendInterface;
class WEBCORE_EXPORT DatabaseProvider : public RefCounted<DatabaseProvider> {