Changeset 113157 in webkit


Ignore:
Timestamp:
Apr 4, 2012 2:36:28 AM (12 years ago)
Author:
yurys@chromium.org
Message:

Web Inspector: CodeGeneratorInspector.py: switch Inspector, Memory and Database domains to typed API
https://bugs.webkit.org/show_bug.cgi?id=82958

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-04-02
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):

Location:
trunk/Source/WebCore
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r113156 r113157  
     12012-04-02  Peter Rybin  <peter.rybin@gmail.com>
     2
     3        Web Inspector: CodeGeneratorInspector.py: switch Inspector, Memory and Database domains to typed API
     4        https://bugs.webkit.org/show_bug.cgi?id=82958
     5
     6        Reviewed by Yury Semikhatsky.
     7
     8        Client code is switched to typed API (all InspectorObject and InspectorArray types are replaced with
     9        generated types from TypeBuilder according to Inspector.json).
     10
     11        Missing array of InspectorValues specialization is added.
     12
     13        * inspector/CodeGeneratorInspector.py:
     14        * inspector/InjectedScriptHost.cpp:
     15        (WebCore::InjectedScriptHost::inspectImpl):
     16        * inspector/InspectorAgent.cpp:
     17        (WebCore::InspectorAgent::inspect):
     18        * inspector/InspectorAgent.h:
     19        (InspectorAgent):
     20        * inspector/InspectorDatabaseAgent.cpp:
     21        (WebCore):
     22        (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
     23        * inspector/InspectorDatabaseAgent.h:
     24        (InspectorDatabaseAgent):
     25        * inspector/InspectorDatabaseResource.cpp:
     26        (WebCore::InspectorDatabaseResource::bind):
     27        * inspector/InspectorMemoryAgent.cpp:
     28        (WebCore::InspectorMemoryAgent::getDOMNodeCount):
     29        * inspector/InspectorMemoryAgent.h:
     30        (InspectorMemoryAgent):
     31
    1322012-04-04  Andrey Kosyakov  <caseq@chromium.org>
    233
  • trunk/Source/WebCore/inspector/CodeGeneratorInspector.py

    r112706 r113157  
    6161
    6262STRICT_ENABLED_DOMAINS = ["Console", "DOMDebugger",
    63                           "CSS", "Debugger", "DOM", "Network", "Page", "Runtime"]
     63                          "CSS", "Debugger", "DOM", "Network", "Page", "Runtime",
     64                          "Inspector", "Memory", "Database"]
    6465
    6566
     
    22782279};
    22792280
    2280 
    2281 
    22822281template<>
    2283 struct ArrayItemHelper<InspectorObject> {
     2282struct ArrayItemHelper<InspectorValue> {
    22842283    struct Traits {
    2285         static void pushRefPtr(InspectorArray* array, PassRefPtr<InspectorObject> value)
     2284        static void pushRefPtr(InspectorArray* array, PassRefPtr<InspectorValue> value)
    22862285        {
    2287             array->pushObject(value);
     2286            array->pushValue(value);
    22882287        }
    22892288    };
  • trunk/Source/WebCore/inspector/InjectedScriptHost.cpp

    r113013 r113157  
    9999void InjectedScriptHost::inspectImpl(PassRefPtr<InspectorValue> object, PassRefPtr<InspectorValue> hints)
    100100{
    101     if (m_inspectorAgent)
    102         m_inspectorAgent->inspect(object->asObject(), hints->asObject());
     101    if (m_inspectorAgent) {
     102        RefPtr<TypeBuilder::Runtime::RemoteObject> remoteObject = TypeBuilder::Runtime::RemoteObject::runtimeCast(object);
     103        m_inspectorAgent->inspect(remoteObject, hints->asObject());
     104    }
    103105}
    104106
  • trunk/Source/WebCore/inspector/InspectorAgent.cpp

    r110854 r113157  
    203203}
    204204
    205 void InspectorAgent::inspect(PassRefPtr<InspectorObject> objectToInspect, PassRefPtr<InspectorObject> hints)
     205void InspectorAgent::inspect(PassRefPtr<TypeBuilder::Runtime::RemoteObject> objectToInspect, PassRefPtr<InspectorObject> hints)
    206206{
    207207    if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled) && m_frontend) {
  • trunk/Source/WebCore/inspector/InspectorAgent.h

    r108965 r113157  
    9595    void setInjectedScriptForOrigin(const String& origin, const String& source);
    9696
    97     void inspect(PassRefPtr<InspectorObject> objectToInspect, PassRefPtr<InspectorObject> hints);
     97    void inspect(PassRefPtr<TypeBuilder::Runtime::RemoteObject> objectToInspect, PassRefPtr<InspectorObject> hints);
    9898
    9999private:
     
    113113
    114114    Vector<pair<long, String> > m_pendingEvaluateTestCommands;
    115     pair<RefPtr<InspectorObject>, RefPtr<InspectorObject> > m_pendingInspectData;
     115    pair<RefPtr<TypeBuilder::Runtime::RemoteObject>, RefPtr<InspectorObject> > m_pendingInspectData;
    116116    typedef HashMap<String, String> InjectedScriptForOriginMap;
    117117    InjectedScriptForOriginMap m_injectedScriptForOrigin;
  • trunk/Source/WebCore/inspector/InspectorDatabaseAgent.cpp

    r113013 r113157  
    104104        SQLResultSetRowList* rowList = resultSet->rows();
    105105
    106         RefPtr<InspectorArray> columnNames = InspectorArray::create();
     106        RefPtr<TypeBuilder::Array<String> > columnNames = TypeBuilder::Array<String>::create();
    107107        const Vector<String>& columns = rowList->columnNames();
    108108        for (size_t i = 0; i < columns.size(); ++i)
    109             columnNames->pushString(columns[i]);
    110 
    111         RefPtr<InspectorArray> values = InspectorArray::create();
     109            columnNames->addItem(columns[i]);
     110
     111        RefPtr<TypeBuilder::Array<InspectorValue> > values = TypeBuilder::Array<InspectorValue>::create();
    112112        const Vector<SQLValue>& data = rowList->values();
    113113        for (size_t i = 0; i < data.size(); ++i) {
    114114            const SQLValue& value = rowList->values()[i];
    115115            switch (value.type()) {
    116                 case SQLValue::StringValue: values->pushString(value.string()); break;
    117                 case SQLValue::NumberValue: values->pushNumber(value.number()); break;
    118                 case SQLValue::NullValue: values->pushValue(InspectorValue::null()); break;
     116            case SQLValue::StringValue: values->addItem(InspectorString::create(value.string())); break;
     117            case SQLValue::NumberValue: values->addItem(InspectorBasicValue::create(value.number())); break;
     118            case SQLValue::NullValue: values->addItem(InspectorValue::null()); break;
    119119            }
    120120        }
     
    292292}
    293293
    294 void InspectorDatabaseAgent::getDatabaseTableNames(ErrorString* error, const String& databaseId, RefPtr<InspectorArray>& names)
     294void InspectorDatabaseAgent::getDatabaseTableNames(ErrorString* error, const String& databaseId, RefPtr<TypeBuilder::Array<String> >& names)
    295295{
    296296    if (!m_enabled) {
     
    298298        return;
    299299    }
     300
     301    names = TypeBuilder::Array<String>::create();
    300302
    301303    Database* database = databaseForId(databaseId);
     
    304306        unsigned length = tableNames.size();
    305307        for (unsigned i = 0; i < length; ++i)
    306             names->pushString(tableNames[i]);
     308            names->addItem(tableNames[i]);
    307309    }
    308310}
  • trunk/Source/WebCore/inspector/InspectorDatabaseAgent.h

    r113013 r113157  
    6767    virtual void enable(ErrorString*);
    6868    virtual void disable(ErrorString*);
    69     virtual void getDatabaseTableNames(ErrorString*, const String& databaseId, RefPtr<InspectorArray>& names);
     69    virtual void getDatabaseTableNames(ErrorString*, const String& databaseId, RefPtr<TypeBuilder::Array<String> >& names);
    7070    virtual void executeSQL(ErrorString*, const String& databaseId, const String& query, bool* success, int* transactionId);
    7171
  • trunk/Source/WebCore/inspector/InspectorDatabaseResource.cpp

    r113013 r113157  
    5959void InspectorDatabaseResource::bind(InspectorFrontend::Database* frontend)
    6060{
    61     RefPtr<InspectorObject> jsonObject = InspectorObject::create();
    62     jsonObject->setString("id", m_id);
    63     jsonObject->setString("domain", m_domain);
    64     jsonObject->setString("name", m_name);
    65     jsonObject->setString("version", m_version);
     61    RefPtr<TypeBuilder::Database::Database> jsonObject = TypeBuilder::Database::Database::create()
     62        .setId(m_id)
     63        .setDomain(m_domain)
     64        .setName(m_name)
     65        .setVersion(m_version);
    6666    frontend->addDatabase(jsonObject);
    6767}
  • trunk/Source/WebCore/inspector/InspectorMemoryAgent.cpp

    r110854 r113157  
    199199    CounterVisitor(Page* page)
    200200        : m_page(page)
    201         , m_domGroups(InspectorArray::create())
     201        , m_domGroups(TypeBuilder::Array<TypeBuilder::Memory::DOMGroup>::create())
    202202        , m_jsExternalStringSize(0)
    203203        , m_sharedStringSize(0) { }
    204204
    205     InspectorArray* domGroups() { return m_domGroups.get(); }
    206 
    207     PassRefPtr<InspectorObject> strings()
     205    TypeBuilder::Array<TypeBuilder::Memory::DOMGroup>* domGroups() { return m_domGroups.get(); }
     206
     207    PassRefPtr<StringStatistics> strings()
    208208    {
    209209        RefPtr<StringStatistics> stringStatistics = StringStatistics::create()
     
    237237            domGroup->setDocumentURI(static_cast<Document*>(rootNode)->documentURI());
    238238
    239         m_domGroups->pushObject(domGroup);
     239        m_domGroups->addItem(domGroup);
    240240    }
    241241
     
    279279    HashSet<Node*> m_roots;
    280280    Page* m_page;
    281     RefPtr<InspectorArray> m_domGroups;
     281    RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> > m_domGroups;
    282282    CharacterDataStatistics m_characterDataStatistics;
    283283    int m_jsExternalStringSize;
     
    291291}
    292292
    293 void InspectorMemoryAgent::getDOMNodeCount(ErrorString*, RefPtr<InspectorArray>& domGroups, RefPtr<InspectorObject>& strings)
     293void InspectorMemoryAgent::getDOMNodeCount(ErrorString*, RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> >& domGroups, RefPtr<TypeBuilder::Memory::StringStatistics>& strings)
    294294{
    295295    CounterVisitor counterVisitor(m_page);
  • trunk/Source/WebCore/inspector/InspectorMemoryAgent.h

    r106777 r113157  
    5858    }
    5959
    60     void getDOMNodeCount(ErrorString*, RefPtr<InspectorArray>& domGroups, RefPtr<InspectorObject>& strings);
     60    void getDOMNodeCount(ErrorString*, RefPtr<TypeBuilder::Array<TypeBuilder::Memory::DOMGroup> >& domGroups, RefPtr<TypeBuilder::Memory::StringStatistics>& strings);
    6161
    6262    ~InspectorMemoryAgent();
Note: See TracChangeset for help on using the changeset viewer.