Diff
Modified: trunk/Source/WebCore/ChangeLog (113156 => 113157)
--- trunk/Source/WebCore/ChangeLog 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/ChangeLog 2012-04-04 09:36:28 UTC (rev 113157)
@@ -1,3 +1,34 @@
+2012-04-02 Peter Rybin <[email protected]>
+
+ Web Inspector: CodeGeneratorInspector.py: switch Inspector, Memory and Database domains to typed API
+ https://bugs.webkit.org/show_bug.cgi?id=82958
+
+ Reviewed by Yury Semikhatsky.
+
+ Client code is switched to typed API (all InspectorObject and InspectorArray types are replaced with
+ generated types from TypeBuilder according to Inspector.json).
+
+ Missing array of InspectorValues specialization is added.
+
+ * inspector/CodeGeneratorInspector.py:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::inspectImpl):
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::inspect):
+ * inspector/InspectorAgent.h:
+ (InspectorAgent):
+ * inspector/InspectorDatabaseAgent.cpp:
+ (WebCore):
+ (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
+ * inspector/InspectorDatabaseAgent.h:
+ (InspectorDatabaseAgent):
+ * inspector/InspectorDatabaseResource.cpp:
+ (WebCore::InspectorDatabaseResource::bind):
+ * inspector/InspectorMemoryAgent.cpp:
+ (WebCore::InspectorMemoryAgent::getDOMNodeCount):
+ * inspector/InspectorMemoryAgent.h:
+ (InspectorMemoryAgent):
+
2012-04-04 Andrey Kosyakov <[email protected]>
Web Inspector: make padding and client window width part of timeline calculator's state
Modified: trunk/Source/WebCore/inspector/CodeGeneratorInspector.py (113156 => 113157)
--- trunk/Source/WebCore/inspector/CodeGeneratorInspector.py 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/CodeGeneratorInspector.py 2012-04-04 09:36:28 UTC (rev 113157)
@@ -60,7 +60,8 @@
"Debugger.FunctionDetails", "Debugger.CallFrame"])
STRICT_ENABLED_DOMAINS = ["Console", "DOMDebugger",
- "CSS", "Debugger", "DOM", "Network", "Page", "Runtime"]
+ "CSS", "Debugger", "DOM", "Network", "Page", "Runtime",
+ "Inspector", "Memory", "Database"]
cmdline_parser = optparse.OptionParser()
@@ -2277,14 +2278,12 @@
};
};
-
-
template<>
-struct ArrayItemHelper<InspectorObject> {
+struct ArrayItemHelper<InspectorValue> {
struct Traits {
- static void pushRefPtr(InspectorArray* array, PassRefPtr<InspectorObject> value)
+ static void pushRefPtr(InspectorArray* array, PassRefPtr<InspectorValue> value)
{
- array->pushObject(value);
+ array->pushValue(value);
}
};
};
Modified: trunk/Source/WebCore/inspector/InjectedScriptHost.cpp (113156 => 113157)
--- trunk/Source/WebCore/inspector/InjectedScriptHost.cpp 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InjectedScriptHost.cpp 2012-04-04 09:36:28 UTC (rev 113157)
@@ -98,8 +98,10 @@
void InjectedScriptHost::inspectImpl(PassRefPtr<InspectorValue> object, PassRefPtr<InspectorValue> hints)
{
- if (m_inspectorAgent)
- m_inspectorAgent->inspect(object->asObject(), hints->asObject());
+ if (m_inspectorAgent) {
+ RefPtr<TypeBuilder::Runtime::RemoteObject> remoteObject = TypeBuilder::Runtime::RemoteObject::runtimeCast(object);
+ m_inspectorAgent->inspect(remoteObject, hints->asObject());
+ }
}
void InjectedScriptHost::getEventListenersImpl(Node* node, Vector<EventListenerInfo>& listenersArray)
Modified: trunk/Source/WebCore/inspector/InspectorAgent.cpp (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorAgent.cpp 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorAgent.cpp 2012-04-04 09:36:28 UTC (rev 113157)
@@ -202,7 +202,7 @@
m_injectedScriptForOrigin.set(origin, source);
}
-void InspectorAgent::inspect(PassRefPtr<InspectorObject> objectToInspect, PassRefPtr<InspectorObject> hints)
+void InspectorAgent::inspect(PassRefPtr<TypeBuilder::Runtime::RemoteObject> objectToInspect, PassRefPtr<InspectorObject> hints)
{
if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled) && m_frontend) {
m_frontend->inspector()->inspect(objectToInspect, hints);
Modified: trunk/Source/WebCore/inspector/InspectorAgent.h (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorAgent.h 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorAgent.h 2012-04-04 09:36:28 UTC (rev 113157)
@@ -94,7 +94,7 @@
void setInjectedScriptForOrigin(const String& origin, const String& source);
- void inspect(PassRefPtr<InspectorObject> objectToInspect, PassRefPtr<InspectorObject> hints);
+ void inspect(PassRefPtr<TypeBuilder::Runtime::RemoteObject> objectToInspect, PassRefPtr<InspectorObject> hints);
private:
InspectorAgent(Page*, InjectedScriptManager*, InstrumentingAgents*, InspectorState*);
@@ -112,7 +112,7 @@
InjectedScriptManager* m_injectedScriptManager;
Vector<pair<long, String> > m_pendingEvaluateTestCommands;
- pair<RefPtr<InspectorObject>, RefPtr<InspectorObject> > m_pendingInspectData;
+ pair<RefPtr<TypeBuilder::Runtime::RemoteObject>, RefPtr<InspectorObject> > m_pendingInspectData;
typedef HashMap<String, String> InjectedScriptForOriginMap;
InjectedScriptForOriginMap m_injectedScriptForOrigin;
#if ENABLE(WORKERS)
Modified: trunk/Source/WebCore/inspector/InspectorDatabaseAgent.cpp (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorDatabaseAgent.cpp 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorDatabaseAgent.cpp 2012-04-04 09:36:28 UTC (rev 113157)
@@ -103,19 +103,19 @@
SQLResultSetRowList* rowList = resultSet->rows();
- RefPtr<InspectorArray> columnNames = InspectorArray::create();
+ RefPtr<TypeBuilder::Array<String> > columnNames = TypeBuilder::Array<String>::create();
const Vector<String>& columns = rowList->columnNames();
for (size_t i = 0; i < columns.size(); ++i)
- columnNames->pushString(columns[i]);
+ columnNames->addItem(columns[i]);
- RefPtr<InspectorArray> values = InspectorArray::create();
+ RefPtr<TypeBuilder::Array<InspectorValue> > values = TypeBuilder::Array<InspectorValue>::create();
const Vector<SQLValue>& data = ""
for (size_t i = 0; i < data.size(); ++i) {
const SQLValue& value = rowList->values()[i];
switch (value.type()) {
- case SQLValue::StringValue: values->pushString(value.string()); break;
- case SQLValue::NumberValue: values->pushNumber(value.number()); break;
- case SQLValue::NullValue: values->pushValue(InspectorValue::null()); break;
+ case SQLValue::StringValue: values->addItem(InspectorString::create(value.string())); break;
+ case SQLValue::NumberValue: values->addItem(InspectorBasicValue::create(value.number())); break;
+ case SQLValue::NullValue: values->addItem(InspectorValue::null()); break;
}
}
m_frontendProvider->frontend()->sqlTransactionSucceeded(m_transactionId, columnNames, values);
@@ -291,19 +291,21 @@
m_enabled = m_state->getBoolean(DatabaseAgentState::databaseAgentEnabled);
}
-void InspectorDatabaseAgent::getDatabaseTableNames(ErrorString* error, const String& databaseId, RefPtr<InspectorArray>& names)
+void InspectorDatabaseAgent::getDatabaseTableNames(ErrorString* error, const String& databaseId, RefPtr<TypeBuilder::Array<String> >& names)
{
if (!m_enabled) {
*error = "Database agent is not enabled";
return;
}
+ names = TypeBuilder::Array<String>::create();
+
Database* database = databaseForId(databaseId);
if (database) {
Vector<String> tableNames = database->tableNames();
unsigned length = tableNames.size();
for (unsigned i = 0; i < length; ++i)
- names->pushString(tableNames[i]);
+ names->addItem(tableNames[i]);
}
}
Modified: trunk/Source/WebCore/inspector/InspectorDatabaseAgent.h (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorDatabaseAgent.h 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorDatabaseAgent.h 2012-04-04 09:36:28 UTC (rev 113157)
@@ -66,7 +66,7 @@
// Called from the front-end.
virtual void enable(ErrorString*);
virtual void disable(ErrorString*);
- virtual void getDatabaseTableNames(ErrorString*, const String& databaseId, RefPtr<InspectorArray>& names);
+ virtual void getDatabaseTableNames(ErrorString*, const String& databaseId, RefPtr<TypeBuilder::Array<String> >& names);
virtual void executeSQL(ErrorString*, const String& databaseId, const String& query, bool* success, int* transactionId);
// Called from the injected script.
Modified: trunk/Source/WebCore/inspector/InspectorDatabaseResource.cpp (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorDatabaseResource.cpp 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorDatabaseResource.cpp 2012-04-04 09:36:28 UTC (rev 113157)
@@ -58,11 +58,11 @@
void InspectorDatabaseResource::bind(InspectorFrontend::Database* frontend)
{
- RefPtr<InspectorObject> jsonObject = InspectorObject::create();
- jsonObject->setString("id", m_id);
- jsonObject->setString("domain", m_domain);
- jsonObject->setString("name", m_name);
- jsonObject->setString("version", m_version);
+ RefPtr<TypeBuilder::Database::Database> jsonObject = TypeBuilder::Database::Database::create()
+ .setId(m_id)
+ .setDomain(m_domain)
+ .setName(m_name)
+ .setVersion(m_version);
frontend->addDatabase(jsonObject);
}
Modified: trunk/Source/WebCore/inspector/InspectorMemoryAgent.cpp (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorMemoryAgent.cpp 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorMemoryAgent.cpp 2012-04-04 09:36:28 UTC (rev 113157)
@@ -198,13 +198,13 @@
public:
CounterVisitor(Page* page)
: m_page(page)
- , m_domGroups(InspectorArray::create())
+ , m_domGroups(TypeBuilder::Array<TypeBuilder::Memory::DOMGroup>::create())
, m_jsExternalStringSize(0)
, m_sharedStringSize(0) { }
- InspectorArray* domGroups() { return m_domGroups.get(); }
+ TypeBuilder::Array<TypeBuilder::Memory::DOMGroup>* domGroups() { return m_domGroups.get(); }
- PassRefPtr<InspectorObject> strings()
+ PassRefPtr<StringStatistics> strings()
{
RefPtr<StringStatistics> stringStatistics = StringStatistics::create()
.setDom(m_characterDataStatistics.characterDataSize())
@@ -236,7 +236,7 @@
if (rootNode->nodeType() == Node::DOCUMENT_NODE)
domGroup->setDocumentURI(static_cast<Document*>(rootNode)->documentURI());
- m_domGroups->pushObject(domGroup);
+ m_domGroups->addItem(domGroup);
}
virtual void visitJSExternalString(StringImpl* string)
@@ -278,7 +278,7 @@
HashSet<Node*> m_roots;
Page* m_page;
- RefPtr<InspectorArray> m_domGroups;
+ RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> > m_domGroups;
CharacterDataStatistics m_characterDataStatistics;
int m_jsExternalStringSize;
int m_sharedStringSize;
@@ -290,7 +290,7 @@
{
}
-void InspectorMemoryAgent::getDOMNodeCount(ErrorString*, RefPtr<InspectorArray>& domGroups, RefPtr<InspectorObject>& strings)
+void InspectorMemoryAgent::getDOMNodeCount(ErrorString*, RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> >& domGroups, RefPtr<TypeBuilder::Memory::StringStatistics>& strings)
{
CounterVisitor counterVisitor(m_page);
ScriptProfiler::visitJSDOMWrappers(&counterVisitor);
Modified: trunk/Source/WebCore/inspector/InspectorMemoryAgent.h (113156 => 113157)
--- trunk/Source/WebCore/inspector/InspectorMemoryAgent.h 2012-04-04 09:27:13 UTC (rev 113156)
+++ trunk/Source/WebCore/inspector/InspectorMemoryAgent.h 2012-04-04 09:36:28 UTC (rev 113157)
@@ -57,7 +57,7 @@
return adoptPtr(new InspectorMemoryAgent(instrumentingAgents, state, page, domAgent));
}
- void getDOMNodeCount(ErrorString*, RefPtr<InspectorArray>& domGroups, RefPtr<InspectorObject>& strings);
+ void getDOMNodeCount(ErrorString*, RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> >& domGroups, RefPtr<TypeBuilder::Memory::StringStatistics>& strings);
~InspectorMemoryAgent();