| ### Begin File: InspectorBackendCommands.js |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| // Database |
| InspectorBackend.registerDomain("Database", null); |
| InspectorBackend.registerEnum("Database.PrimaryColors", {Red: "red", Green: "green", Blue: "blue"}); |
| InspectorBackend.registerCommand("Database.executeSQLSyncOptionalReturnValues", null, [{"name": "databaseId", "type": "number"}, {"name": "query", "type": "string"}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]); |
| InspectorBackend.registerCommand("Database.executeSQLAsyncOptionalReturnValues", null, [{"name": "databaseId", "type": "number"}, {"name": "query", "type": "string"}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]); |
| InspectorBackend.registerCommand("Database.executeSQLSync", null, [{"name": "databaseId", "type": "number"}, {"name": "query", "type": "string"}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "alternateColors", "screenColor", "printColor"]); |
| InspectorBackend.registerCommand("Database.executeSQLAsync", null, [{"name": "databaseId", "type": "number"}, {"name": "query", "type": "string"}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]); |
| InspectorBackend.registerDatabaseDispatcher = InspectorBackend.registerDispatcher.bind(InspectorBackend, "Database"); |
| InspectorBackend.activateDomain("Database", null); |
| ### End File: InspectorBackendCommands.js |
| |
| ### Begin File: TestAlternateBackendDispatchers.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #pragma once |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| |
| #include "TestProtocolTypes.h" |
| #include <JavaScriptCore/InspectorBackendDispatcher.h> |
| #include <JavaScriptCore/InspectorFrontendRouter.h> |
| |
| namespace Inspector { |
| |
| class AlternateBackendDispatcher { |
| public: |
| void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTFMove(dispatcher); } |
| BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); } |
| private: |
| RefPtr<BackendDispatcher> m_backendDispatcher; |
| }; |
| |
| |
| class AlternateDatabaseBackendDispatcher : public AlternateBackendDispatcher { |
| public: |
| virtual ~AlternateDatabaseBackendDispatcher() { } |
| virtual void executeSQLSyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0; |
| virtual void executeSQLAsyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0; |
| virtual void executeSQLSync(long callId, int in_databaseId, const String& in_query) = 0; |
| virtual void executeSQLAsync(long callId, int in_databaseId, const String& in_query) = 0; |
| }; |
| |
| } // namespace Inspector |
| |
| #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| ### End File: TestAlternateBackendDispatchers.h |
| |
| ### Begin File: TestBackendDispatchers.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #pragma once |
| |
| #include "TestProtocolObjects.h" |
| #include <JavaScriptCore/InspectorBackendDispatcher.h> |
| #include <wtf/text/WTFString.h> |
| |
| namespace Inspector { |
| |
| typedef String ErrorString; |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| class AlternateDatabaseBackendDispatcher; |
| #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| |
| class DatabaseBackendDispatcherHandler { |
| public: |
| // Named after parameter 'printColor' while generating command/event executeSQLSyncOptionalReturnValues. |
| enum class PrintColor { |
| Cyan = 3, |
| Magenta = 4, |
| Yellow = 5, |
| Black = 6, |
| }; // enum class PrintColor |
| virtual void executeSQLSyncOptionalReturnValues(ErrorString&, int in_databaseId, const String& in_query, RefPtr<JSON::ArrayOf<String>>& opt_out_columnNames, Optional<String>& opt_out_notes, Optional<double>& opt_out_timestamp, Optional<JSON::Object>& opt_out_values, Optional<JSON::Value>& opt_out_payload, Optional<int>& opt_out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& opt_out_sqlError, Inspector::Protocol::Database::PrimaryColors* opt_out_screenColor, RefPtr<Inspector::Protocol::Database::ColorList>& opt_out_alternateColors, DatabaseBackendDispatcherHandler::PrintColor* opt_out_printColor) = 0; |
| class ExecuteSQLAsyncOptionalReturnValuesCallback : public BackendDispatcher::CallbackBase { |
| public: |
| ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&&, int id); |
| void sendSuccess(RefPtr<JSON::ArrayOf<String>>&& columnNames, Optional<String>& notes, Optional<double>& timestamp, Optional<JSON::Object>& values, Optional<JSON::Value>& payload, Optional<int>& databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Optional<Inspector::Protocol::Database::PrimaryColors> screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Optional<DatabaseBackendDispatcherHandler::PrintColor> printColor); |
| }; |
| virtual void executeSQLAsyncOptionalReturnValues(int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncOptionalReturnValuesCallback>&& callback) = 0; |
| virtual void executeSQLSync(ErrorString&, int in_databaseId, const String& in_query, RefPtr<JSON::ArrayOf<String>>& out_columnNames, String* out_notes, double* out_timestamp, JSON::Object* out_values, JSON::Value* out_payload, int* out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& out_sqlError, RefPtr<Inspector::Protocol::Database::ColorList>& out_alternateColors, Inspector::Protocol::Database::PrimaryColors* out_screenColor, DatabaseBackendDispatcherHandler::PrintColor* out_printColor) = 0; |
| class ExecuteSQLAsyncCallback : public BackendDispatcher::CallbackBase { |
| public: |
| ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&&, int id); |
| void sendSuccess(RefPtr<JSON::ArrayOf<String>>&& columnNames, const String& notes, double timestamp, JSON::Object values, JSON::Value payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::Database::PrimaryColors screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, DatabaseBackendDispatcherHandler::PrintColor printColor); |
| }; |
| virtual void executeSQLAsync(int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncCallback>&& callback) = 0; |
| protected: |
| virtual ~DatabaseBackendDispatcherHandler(); |
| }; |
| |
| class DatabaseBackendDispatcher final : public SupplementalBackendDispatcher { |
| public: |
| static Ref<DatabaseBackendDispatcher> create(BackendDispatcher&, DatabaseBackendDispatcherHandler*); |
| void dispatch(long requestId, const String& method, Ref<JSON::Object>&& message) override; |
| private: |
| void executeSQLSyncOptionalReturnValues(long requestId, RefPtr<JSON::Object>&& parameters); |
| void executeSQLAsyncOptionalReturnValues(long requestId, RefPtr<JSON::Object>&& parameters); |
| void executeSQLSync(long requestId, RefPtr<JSON::Object>&& parameters); |
| void executeSQLAsync(long requestId, RefPtr<JSON::Object>&& parameters); |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| public: |
| void setAlternateDispatcher(AlternateDatabaseBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; } |
| private: |
| AlternateDatabaseBackendDispatcher* m_alternateDispatcher { nullptr }; |
| #endif |
| private: |
| DatabaseBackendDispatcher(BackendDispatcher&, DatabaseBackendDispatcherHandler*); |
| DatabaseBackendDispatcherHandler* m_agent { nullptr }; |
| }; |
| |
| } // namespace Inspector |
| ### End File: TestBackendDispatchers.h |
| |
| ### Begin File: TestBackendDispatchers.cpp |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #include "config.h" |
| #include "TestBackendDispatchers.h" |
| |
| #include <JavaScriptCore/InspectorFrontendRouter.h> |
| #include <wtf/JSONValues.h> |
| #include <wtf/NeverDestroyed.h> |
| #include <wtf/text/CString.h> |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| #include "TestAlternateBackendDispatchers.h" |
| #endif |
| |
| namespace Inspector { |
| |
| DatabaseBackendDispatcherHandler::~DatabaseBackendDispatcherHandler() { } |
| |
| Ref<DatabaseBackendDispatcher> DatabaseBackendDispatcher::create(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent) |
| { |
| return adoptRef(*new DatabaseBackendDispatcher(backendDispatcher, agent)); |
| } |
| |
| DatabaseBackendDispatcher::DatabaseBackendDispatcher(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent) |
| : SupplementalBackendDispatcher(backendDispatcher) |
| , m_agent(agent) |
| { |
| m_backendDispatcher->registerDispatcherForDomain("Database"_s, this); |
| } |
| |
| void DatabaseBackendDispatcher::dispatch(long requestId, const String& method, Ref<JSON::Object>&& message) |
| { |
| Ref<DatabaseBackendDispatcher> protect(*this); |
| |
| RefPtr<JSON::Object> parameters; |
| message->getObject("params"_s, parameters); |
| |
| if (method == "executeSQLSyncOptionalReturnValues") |
| executeSQLSyncOptionalReturnValues(requestId, WTFMove(parameters)); |
| else if (method == "executeSQLAsyncOptionalReturnValues") |
| executeSQLAsyncOptionalReturnValues(requestId, WTFMove(parameters)); |
| else if (method == "executeSQLSync") |
| executeSQLSync(requestId, WTFMove(parameters)); |
| else if (method == "executeSQLAsync") |
| executeSQLAsync(requestId, WTFMove(parameters)); |
| else |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::MethodNotFound, "'Database." + method + "' was not found"); |
| } |
| |
| void DatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long requestId, RefPtr<JSON::Object>&& parameters) |
| { |
| int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), "databaseId"_s, nullptr); |
| String in_query = m_backendDispatcher->getString(parameters.get(), "query"_s, nullptr); |
| if (m_backendDispatcher->hasProtocolErrors()) { |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, "Some arguments of method 'Database.executeSQLSyncOptionalReturnValues' can't be processed"_s); |
| return; |
| } |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| if (m_alternateDispatcher) { |
| m_alternateDispatcher->executeSQLSyncOptionalReturnValues(requestId, in_databaseId, in_query); |
| return; |
| } |
| #endif |
| |
| ErrorString error; |
| Ref<JSON::Object> result = JSON::Object::create(); |
| RefPtr<JSON::ArrayOf<String>> out_columnNames; |
| Optional<String> out_notes; |
| Optional<double> out_timestamp; |
| Optional<JSON::Object> out_values; |
| Optional<JSON::Value> out_payload; |
| Optional<int> out_databaseId; |
| RefPtr<Inspector::Protocol::Database::Error> out_sqlError; |
| Inspector::Protocol::Database::PrimaryColors out_screenColor; |
| RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors; |
| DatabaseBackendDispatcherHandler::PrintColor out_printColor; |
| m_agent->executeSQLSyncOptionalReturnValues(error, in_databaseId, in_query, out_columnNames, out_notes, out_timestamp, out_values, out_payload, out_databaseId, out_sqlError, out_screenColor, out_alternateColors, out_printColor); |
| |
| if (!error.length()) { |
| if (out_columnNames) |
| result->setArray("columnNames"_s, out_columnNames); |
| if (out_notes.hasValue()) |
| result->setString("notes"_s, *out_notes); |
| if (out_timestamp.hasValue()) |
| result->setDouble("timestamp"_s, *out_timestamp); |
| if (out_values.hasValue()) |
| result->setObject("values"_s, *out_values); |
| if (out_payload.hasValue()) |
| result->setValue("payload"_s, *out_payload); |
| if (out_databaseId.hasValue()) |
| result->setInteger("databaseId"_s, *out_databaseId); |
| if (out_sqlError) |
| result->setObject("sqlError"_s, out_sqlError); |
| if (out_screenColor.hasValue()) |
| result->setString("screenColor"_s, *out_screenColor); |
| if (out_alternateColors) |
| result->setArray("alternateColors"_s, out_alternateColors); |
| if (out_printColor.hasValue()) |
| result->setString("printColor"_s, *out_printColor); |
| } |
| if (!error.length()) |
| m_backendDispatcher->sendResponse(requestId, WTFMove(result), false); |
| else |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, WTFMove(error)); |
| } |
| |
| DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTFMove(backendDispatcher), id) { } |
| |
| void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::sendSuccess(RefPtr<JSON::ArrayOf<String>>&& columnNames, Optional<String>& notes, Optional<double>& timestamp, Optional<JSON::Object>& values, Optional<JSON::Value>& payload, Optional<int>& databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Optional<Inspector::Protocol::Database::PrimaryColors> screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Optional<DatabaseBackendDispatcherHandler::PrintColor> printColor) |
| { |
| Ref<JSON::Object> jsonMessage = JSON::Object::create(); |
| if (columnNames) |
| jsonMessage->setArray("columnNames"_s, columnNames); |
| if (notes.hasValue()) |
| jsonMessage->setString("notes"_s, *notes); |
| if (timestamp.hasValue()) |
| jsonMessage->setDouble("timestamp"_s, *timestamp); |
| if (values.hasValue()) |
| jsonMessage->setObject("values"_s, *values); |
| if (payload.hasValue()) |
| jsonMessage->setValue("payload"_s, *payload); |
| if (databaseId.hasValue()) |
| jsonMessage->setInteger("databaseId"_s, *databaseId); |
| if (sqlError) |
| jsonMessage->setObject("sqlError"_s, sqlError); |
| if (screenColor.hasValue()) |
| jsonMessage->setString("screenColor"_s, *screenColor); |
| if (alternateColors) |
| jsonMessage->setArray("alternateColors"_s, alternateColors); |
| if (printColor.hasValue()) |
| jsonMessage->setString("printColor"_s, *printColor); |
| CallbackBase::sendSuccess(WTFMove(jsonMessage)); |
| } |
| |
| void DatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long requestId, RefPtr<JSON::Object>&& parameters) |
| { |
| int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), "databaseId"_s, nullptr); |
| String in_query = m_backendDispatcher->getString(parameters.get(), "query"_s, nullptr); |
| if (m_backendDispatcher->hasProtocolErrors()) { |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, "Some arguments of method 'Database.executeSQLAsyncOptionalReturnValues' can't be processed"_s); |
| return; |
| } |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| if (m_alternateDispatcher) { |
| m_alternateDispatcher->executeSQLAsyncOptionalReturnValues(requestId, in_databaseId, in_query); |
| return; |
| } |
| #endif |
| |
| Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback(m_backendDispatcher.copyRef(), requestId)); |
| m_agent->executeSQLAsyncOptionalReturnValues(in_databaseId, in_query, callback.copyRef()); |
| |
| } |
| |
| void DatabaseBackendDispatcher::executeSQLSync(long requestId, RefPtr<JSON::Object>&& parameters) |
| { |
| int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), "databaseId"_s, nullptr); |
| String in_query = m_backendDispatcher->getString(parameters.get(), "query"_s, nullptr); |
| if (m_backendDispatcher->hasProtocolErrors()) { |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, "Some arguments of method 'Database.executeSQLSync' can't be processed"_s); |
| return; |
| } |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| if (m_alternateDispatcher) { |
| m_alternateDispatcher->executeSQLSync(requestId, in_databaseId, in_query); |
| return; |
| } |
| #endif |
| |
| ErrorString error; |
| Ref<JSON::Object> result = JSON::Object::create(); |
| RefPtr<JSON::ArrayOf<String>> out_columnNames; |
| String out_notes; |
| double out_timestamp; |
| JSON::Object out_values; |
| JSON::Value out_payload; |
| int out_databaseId; |
| RefPtr<Inspector::Protocol::Database::Error> out_sqlError; |
| RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors; |
| Inspector::Protocol::Database::PrimaryColors out_screenColor; |
| DatabaseBackendDispatcherHandler::PrintColor out_printColor; |
| m_agent->executeSQLSync(error, in_databaseId, in_query, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, out_alternateColors, &out_screenColor, &out_printColor); |
| |
| if (!error.length()) { |
| result->setArray("columnNames"_s, out_columnNames); |
| result->setString("notes"_s, out_notes); |
| result->setDouble("timestamp"_s, out_timestamp); |
| result->setObject("values"_s, out_values); |
| result->setValue("payload"_s, out_payload); |
| result->setInteger("databaseId"_s, out_databaseId); |
| result->setObject("sqlError"_s, out_sqlError); |
| result->setArray("alternateColors"_s, out_alternateColors); |
| result->setString("screenColor"_s, Inspector::Protocol::TestHelpers::getEnumConstantValue(out_screenColor)); |
| result->setString("printColor"_s, Inspector::Protocol::TestHelpers::getEnumConstantValue(out_printColor)); |
| } |
| if (!error.length()) |
| m_backendDispatcher->sendResponse(requestId, WTFMove(result), false); |
| else |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, WTFMove(error)); |
| } |
| |
| DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTFMove(backendDispatcher), id) { } |
| |
| void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::sendSuccess(RefPtr<JSON::ArrayOf<String>>&& columnNames, const String& notes, double timestamp, JSON::Object values, JSON::Value payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::Database::PrimaryColors screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, DatabaseBackendDispatcherHandler::PrintColor printColor) |
| { |
| Ref<JSON::Object> jsonMessage = JSON::Object::create(); |
| jsonMessage->setArray("columnNames"_s, columnNames); |
| jsonMessage->setString("notes"_s, notes); |
| jsonMessage->setDouble("timestamp"_s, timestamp); |
| jsonMessage->setObject("values"_s, values); |
| jsonMessage->setValue("payload"_s, payload); |
| jsonMessage->setInteger("databaseId"_s, databaseId); |
| jsonMessage->setObject("sqlError"_s, sqlError); |
| jsonMessage->setString("screenColor"_s, Inspector::Protocol::TestHelpers::getEnumConstantValue(screenColor)); |
| jsonMessage->setArray("alternateColors"_s, alternateColors); |
| jsonMessage->setString("printColor"_s, Inspector::Protocol::TestHelpers::getEnumConstantValue(printColor)); |
| CallbackBase::sendSuccess(WTFMove(jsonMessage)); |
| } |
| |
| void DatabaseBackendDispatcher::executeSQLAsync(long requestId, RefPtr<JSON::Object>&& parameters) |
| { |
| int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), "databaseId"_s, nullptr); |
| String in_query = m_backendDispatcher->getString(parameters.get(), "query"_s, nullptr); |
| if (m_backendDispatcher->hasProtocolErrors()) { |
| m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, "Some arguments of method 'Database.executeSQLAsync' can't be processed"_s); |
| return; |
| } |
| |
| #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) |
| if (m_alternateDispatcher) { |
| m_alternateDispatcher->executeSQLAsync(requestId, in_databaseId, in_query); |
| return; |
| } |
| #endif |
| |
| Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback(m_backendDispatcher.copyRef(), requestId)); |
| m_agent->executeSQLAsync(in_databaseId, in_query, callback.copyRef()); |
| |
| } |
| |
| } // namespace Inspector |
| |
| ### End File: TestBackendDispatchers.cpp |
| |
| ### Begin File: TestFrontendDispatchers.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #pragma once |
| |
| #include "TestProtocolObjects.h" |
| #include <wtf/JSONValues.h> |
| #include <wtf/text/WTFString.h> |
| |
| namespace Inspector { |
| |
| class FrontendRouter; |
| |
| } // namespace Inspector |
| ### End File: TestFrontendDispatchers.h |
| |
| ### Begin File: TestFrontendDispatchers.cpp |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #include "config.h" |
| #include "TestFrontendDispatchers.h" |
| |
| #include <JavaScriptCore/InspectorFrontendRouter.h> |
| #include <wtf/text/CString.h> |
| |
| namespace Inspector { |
| |
| } // namespace Inspector |
| |
| ### End File: TestFrontendDispatchers.cpp |
| |
| ### Begin File: TestProtocolObjects.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #pragma once |
| |
| #include <JavaScriptCore/InspectorProtocolTypes.h> |
| #include <wtf/Assertions.h> |
| |
| namespace Inspector { |
| |
| |
| |
| namespace Protocol { |
| |
| |
| |
| // Forward declarations. |
| namespace Database { |
| class Error; |
| enum class PrimaryColors; |
| } // Database |
| // End of forward declarations. |
| |
| |
| // Typedefs. |
| namespace Database { |
| /* Unique identifier of Database object. */ |
| typedef int DatabaseId; |
| typedef JSON::ArrayOf<Inspector::Protocol::Database::PrimaryColors> ColorList; |
| } // Database |
| // End of typedefs. |
| |
| namespace TestHelpers { |
| |
| String getEnumConstantValue(int code); |
| |
| template<typename T> String getEnumConstantValue(T enumValue) |
| { |
| return getEnumConstantValue(static_cast<int>(enumValue)); |
| } |
| |
| } // namespace TestHelpers |
| |
| namespace Database { |
| /* */ |
| enum class PrimaryColors { |
| Red = 0, |
| Green = 1, |
| Blue = 2, |
| }; // enum class PrimaryColors |
| /* Database error. */ |
| class Error : public JSON::ObjectBase { |
| public: |
| enum { |
| NoFieldsSet = 0, |
| MessageSet = 1 << 0, |
| CodeSet = 1 << 1, |
| AllFieldsSet = (MessageSet | CodeSet) |
| }; |
| |
| template<int STATE> |
| class Builder { |
| private: |
| RefPtr<JSON::Object> m_result; |
| |
| template<int STEP> Builder<STATE | STEP>& castState() |
| { |
| return *reinterpret_cast<Builder<STATE | STEP>*>(this); |
| } |
| |
| Builder(Ref</*Error*/JSON::Object>&& object) |
| : m_result(WTFMove(object)) |
| { |
| COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state); |
| } |
| friend class Error; |
| public: |
| |
| Builder<STATE | MessageSet>& setMessage(const String& value) |
| { |
| COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set); |
| m_result->setString("message"_s, value); |
| return castState<MessageSet>(); |
| } |
| |
| Builder<STATE | CodeSet>& setCode(int value) |
| { |
| COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set); |
| m_result->setInteger("code"_s, value); |
| return castState<CodeSet>(); |
| } |
| |
| Ref<Error> release() |
| { |
| COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready); |
| COMPILE_ASSERT(sizeof(Error) == sizeof(JSON::Object), cannot_cast); |
| |
| Ref<JSON::Object> jsonResult = m_result.releaseNonNull(); |
| auto result = WTFMove(*reinterpret_cast<Ref<Error>*>(&jsonResult)); |
| return result; |
| } |
| }; |
| |
| /* |
| * Synthetic constructor: |
| * Ref<Error> result = Error::create() |
| * .setMessage(...) |
| * .setCode(...) |
| * .release(); |
| */ |
| static Builder<NoFieldsSet> create() |
| { |
| return Builder<NoFieldsSet>(JSON::Object::create()); |
| } |
| }; |
| |
| } // Database |
| |
| |
| |
| namespace TestHelpers { |
| |
| template<typename ProtocolEnumType> |
| Optional<ProtocolEnumType> parseEnumValueFromString(const String&); |
| |
| // Enums in the 'Database' Domain |
| template<> |
| Optional<Inspector::Protocol::Database::PrimaryColors> parseEnumValueFromString<Inspector::Protocol::Database::PrimaryColors>(const String&); |
| |
| } // namespace TestHelpers |
| |
| } // namespace Protocol |
| |
| } // namespace Inspector |
| |
| namespace WTF { |
| |
| template<typename T> struct DefaultHash; |
| |
| // Hash declarations in the 'Database' Domain |
| template<> |
| struct DefaultHash<Inspector::Protocol::Database::PrimaryColors> { |
| typedef IntHash<Inspector::Protocol::Database::PrimaryColors> Hash; |
| }; |
| |
| } // namespace WTF |
| ### End File: TestProtocolObjects.h |
| |
| ### Begin File: TestProtocolObjects.cpp |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #include "config.h" |
| #include "TestProtocolObjects.h" |
| |
| #include <wtf/Optional.h> |
| #include <wtf/text/CString.h> |
| |
| namespace Inspector { |
| |
| namespace Protocol { |
| |
| namespace TestHelpers { |
| |
| static const char* const enum_constant_values[] = { |
| "red", |
| "green", |
| "blue", |
| "cyan", |
| "magenta", |
| "yellow", |
| "black", |
| }; |
| |
| String getEnumConstantValue(int code) { |
| return enum_constant_values[code]; |
| } |
| |
| // Enums in the 'Database' Domain |
| template<> |
| Optional<Inspector::Protocol::Database::PrimaryColors> parseEnumValueFromString<Inspector::Protocol::Database::PrimaryColors>(const String& protocolString) |
| { |
| static const size_t constantValues[] = { |
| (size_t)Inspector::Protocol::Database::PrimaryColors::Red, |
| (size_t)Inspector::Protocol::Database::PrimaryColors::Green, |
| (size_t)Inspector::Protocol::Database::PrimaryColors::Blue, |
| }; |
| for (size_t i = 0; i < 3; ++i) |
| if (protocolString == enum_constant_values[constantValues[i]]) |
| return (Inspector::Protocol::Database::PrimaryColors)constantValues[i]; |
| |
| return WTF::nullopt; |
| } |
| |
| |
| } // namespace TestHelpers |
| |
| |
| |
| } // namespace Protocol |
| |
| } // namespace Inspector |
| |
| ### End File: TestProtocolObjects.cpp |
| |
| ### Begin File: TestProtocolBackendDispatchers.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #include <JavaScriptCore/InspectorAlternateBackendDispatchers.h> |
| #include <wtf/RetainPtr.h> |
| |
| @protocol TestProtocolDatabaseDomainHandler; |
| |
| namespace Inspector { |
| |
| |
| class ObjCInspectorDatabaseBackendDispatcher final : public AlternateDatabaseBackendDispatcher { |
| WTF_MAKE_FAST_ALLOCATED; |
| public: |
| ObjCInspectorDatabaseBackendDispatcher(id<TestProtocolDatabaseDomainHandler> handler) { m_delegate = handler; } |
| virtual void executeSQLSyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) override; |
| virtual void executeSQLAsyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) override; |
| virtual void executeSQLSync(long requestId, int in_databaseId, const String& in_query) override; |
| virtual void executeSQLAsync(long requestId, int in_databaseId, const String& in_query) override; |
| private: |
| RetainPtr<id<TestProtocolDatabaseDomainHandler>> m_delegate; |
| }; |
| |
| } // namespace Inspector |
| |
| ### End File: TestProtocolBackendDispatchers.h |
| |
| ### Begin File: TestProtocolBackendDispatchers.mm |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "config.h" |
| #import "TestProtocolBackendDispatchers.h" |
| |
| #include "TestProtocolInternal.h" |
| #include "TestProtocolTypeConversions.h" |
| #include <wtf/JSONValues.h> |
| |
| namespace Inspector { |
| |
| void ObjCInspectorDatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) |
| { |
| id errorCallback = ^(NSString *error) { |
| backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error); |
| backendDispatcher()->sendPendingErrors(); |
| }; |
| |
| id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, TestProtocolDatabaseError **sqlError, TestProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor) { |
| Ref<JSON::Object> resultObject = JSON::Object::create(); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors"); |
| if (columnNames) |
| resultObject->setArray("columnNames"_s, toJSONStringArray(*columnNames)); |
| if (notes) |
| resultObject->setString("notes"_s, *notes); |
| if (timestamp) |
| resultObject->setDouble("timestamp"_s, *timestamp); |
| if (values) |
| resultObject->setObject("values"_s, [*values toJSONObject]); |
| if (payload) |
| resultObject->setValue("payload"_s, [*payload toJSONObject]); |
| if (databaseId) |
| resultObject->setInteger("databaseId"_s, *databaseId); |
| if (sqlError) |
| resultObject->setObject("sqlError"_s, [*sqlError toJSONObject]); |
| if (screenColor) |
| resultObject->setString("screenColor"_s, toProtocolString(*screenColor)); |
| if (alternateColors) |
| resultObject->setArray("alternateColors"_s, toJSONStringArray(*alternateColors)); |
| if (printColor) |
| resultObject->setString("printColor"_s, toProtocolString(*printColor)); |
| backendDispatcher()->sendResponse(requestId, WTFMove(resultObject), false); |
| }; |
| |
| int o_in_databaseId = in_databaseId; |
| NSString *o_in_query = in_query; |
| |
| [m_delegate executeSQLSyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query]; |
| } |
| |
| void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) |
| { |
| id errorCallback = ^(NSString *error) { |
| backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error); |
| backendDispatcher()->sendPendingErrors(); |
| }; |
| |
| id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, TestProtocolDatabaseError **sqlError, TestProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor) { |
| Ref<JSON::Object> resultObject = JSON::Object::create(); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError"); |
| THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors"); |
| if (columnNames) |
| resultObject->setArray("columnNames"_s, toJSONStringArray(*columnNames)); |
| if (notes) |
| resultObject->setString("notes"_s, *notes); |
| if (timestamp) |
| resultObject->setDouble("timestamp"_s, *timestamp); |
| if (values) |
| resultObject->setObject("values"_s, [*values toJSONObject]); |
| if (payload) |
| resultObject->setValue("payload"_s, [*payload toJSONObject]); |
| if (databaseId) |
| resultObject->setInteger("databaseId"_s, *databaseId); |
| if (sqlError) |
| resultObject->setObject("sqlError"_s, [*sqlError toJSONObject]); |
| if (screenColor) |
| resultObject->setString("screenColor"_s, toProtocolString(*screenColor)); |
| if (alternateColors) |
| resultObject->setArray("alternateColors"_s, toJSONStringArray(*alternateColors)); |
| if (printColor) |
| resultObject->setString("printColor"_s, toProtocolString(*printColor)); |
| backendDispatcher()->sendResponse(requestId, WTFMove(resultObject), false); |
| }; |
| |
| int o_in_databaseId = in_databaseId; |
| NSString *o_in_query = in_query; |
| |
| [m_delegate executeSQLAsyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query]; |
| } |
| |
| void ObjCInspectorDatabaseBackendDispatcher::executeSQLSync(long requestId, int in_databaseId, const String& in_query) |
| { |
| id errorCallback = ^(NSString *error) { |
| backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error); |
| backendDispatcher()->sendPendingErrors(); |
| }; |
| |
| id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, TestProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, TestProtocolDatabasePrimaryColors screenColor, TestProtocolDatabaseExecuteSQLSyncPrintColor printColor) { |
| Ref<JSON::Object> resultObject = JSON::Object::create(); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors"); |
| resultObject->setArray("columnNames"_s, toJSONStringArray(columnNames)); |
| resultObject->setString("notes"_s, notes); |
| resultObject->setDouble("timestamp"_s, timestamp); |
| resultObject->setObject("values"_s, [values toJSONObject]); |
| resultObject->setValue("payload"_s, [payload toJSONObject]); |
| resultObject->setInteger("databaseId"_s, databaseId); |
| resultObject->setObject("sqlError"_s, [sqlError toJSONObject]); |
| resultObject->setArray("alternateColors"_s, toJSONStringArray(alternateColors)); |
| resultObject->setString("screenColor"_s, toProtocolString(screenColor)); |
| resultObject->setString("printColor"_s, toProtocolString(printColor)); |
| backendDispatcher()->sendResponse(requestId, WTFMove(resultObject), false); |
| }; |
| |
| int o_in_databaseId = in_databaseId; |
| NSString *o_in_query = in_query; |
| |
| [m_delegate executeSQLSyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query]; |
| } |
| |
| void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsync(long requestId, int in_databaseId, const String& in_query) |
| { |
| id errorCallback = ^(NSString *error) { |
| backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error); |
| backendDispatcher()->sendPendingErrors(); |
| }; |
| |
| id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, TestProtocolDatabaseError *sqlError, TestProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, TestProtocolDatabaseExecuteSQLAsyncPrintColor printColor) { |
| Ref<JSON::Object> resultObject = JSON::Object::create(); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError"); |
| THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors"); |
| resultObject->setArray("columnNames"_s, toJSONStringArray(columnNames)); |
| resultObject->setString("notes"_s, notes); |
| resultObject->setDouble("timestamp"_s, timestamp); |
| resultObject->setObject("values"_s, [values toJSONObject]); |
| resultObject->setValue("payload"_s, [payload toJSONObject]); |
| resultObject->setInteger("databaseId"_s, databaseId); |
| resultObject->setObject("sqlError"_s, [sqlError toJSONObject]); |
| resultObject->setString("screenColor"_s, toProtocolString(screenColor)); |
| resultObject->setArray("alternateColors"_s, toJSONStringArray(alternateColors)); |
| resultObject->setString("printColor"_s, toProtocolString(printColor)); |
| backendDispatcher()->sendResponse(requestId, WTFMove(resultObject), false); |
| }; |
| |
| int o_in_databaseId = in_databaseId; |
| NSString *o_in_query = in_query; |
| |
| [m_delegate executeSQLAsyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query]; |
| } |
| |
| |
| } // namespace Inspector |
| |
| ### End File: TestProtocolBackendDispatchers.mm |
| |
| ### Begin File: TestProtocolConfiguration.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import <WebInspector/TestProtocol.h> |
| |
| __attribute__((visibility ("default"))) |
| @interface TestProtocolConfiguration : NSObject |
| @property (nonatomic, retain, setter=setDatabaseHandler:) id<TestProtocolDatabaseDomainHandler> databaseHandler; |
| @end |
| |
| |
| ### End File: TestProtocolConfiguration.h |
| |
| ### Begin File: TestProtocolConfiguration.mm |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocolConfiguration.h" |
| |
| #import "TestProtocolInternal.h" |
| #import "TestProtocolBackendDispatchers.h" |
| #import <JavaScriptCore/AlternateDispatchableAgent.h> |
| #import <JavaScriptCore/AugmentableInspectorController.h> |
| #import <JavaScriptCore/InspectorAlternateBackendDispatchers.h> |
| #import <JavaScriptCore/InspectorBackendDispatchers.h> |
| |
| using namespace Inspector; |
| |
| @implementation TestProtocolConfiguration |
| { |
| AugmentableInspectorController* _controller; |
| id<TestProtocolDatabaseDomainHandler> _databaseHandler; |
| } |
| |
| - (instancetype)initWithController:(AugmentableInspectorController*)controller |
| { |
| self = [super init]; |
| if (!self) |
| return nil; |
| ASSERT(controller); |
| _controller = controller; |
| return self; |
| } |
| |
| - (void)dealloc |
| { |
| [_databaseHandler release]; |
| [super dealloc]; |
| } |
| |
| - (void)setDatabaseHandler:(id<TestProtocolDatabaseDomainHandler>)handler |
| { |
| if (handler == _databaseHandler) |
| return; |
| |
| [_databaseHandler release]; |
| _databaseHandler = [handler retain]; |
| |
| auto alternateDispatcher = makeUnique<ObjCInspectorDatabaseBackendDispatcher>(handler); |
| auto alternateAgent = makeUnique<AlternateDispatchableAgent<DatabaseBackendDispatcher, AlternateDatabaseBackendDispatcher>>("Database"_s, *_controller, WTFMove(alternateDispatcher)); |
| _controller->appendExtraAgent(WTFMove(alternateAgent)); |
| } |
| |
| - (id<TestProtocolDatabaseDomainHandler>)databaseHandler |
| { |
| return _databaseHandler; |
| } |
| |
| @end |
| |
| |
| ### End File: TestProtocolConfiguration.mm |
| |
| ### Begin File: TestProtocolEventDispatchers.mm |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocolInternal.h" |
| |
| #import "TestProtocolTypeConversions.h" |
| #import <wtf/JSONValues.h> |
| |
| using namespace Inspector; |
| |
| |
| ### End File: TestProtocolEventDispatchers.mm |
| |
| ### Begin File: TestProtocol.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import <Foundation/Foundation.h> |
| |
| #import <WebInspector/RWIProtocolJSONObject.h> |
| |
| |
| @class TestProtocolDatabaseError; |
| |
| typedef NS_ENUM(NSInteger, TestProtocolPlatform) { |
| TestProtocolPlatformAll, |
| TestProtocolPlatformGeneric, |
| TestProtocolPlatformIOS, |
| TestProtocolPlatformMacOS, |
| }; |
| |
| |
| typedef NS_ENUM(NSInteger, TestProtocolDatabasePrimaryColors) { |
| TestProtocolDatabasePrimaryColorsRed, |
| TestProtocolDatabasePrimaryColorsGreen, |
| TestProtocolDatabasePrimaryColorsBlue, |
| }; |
| |
| typedef NS_ENUM(NSInteger, TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor) { |
| TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan, |
| TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta, |
| TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow, |
| TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack, |
| }; |
| |
| typedef NS_ENUM(NSInteger, TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor) { |
| TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan, |
| TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta, |
| TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow, |
| TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack, |
| }; |
| |
| typedef NS_ENUM(NSInteger, TestProtocolDatabaseExecuteSQLSyncPrintColor) { |
| TestProtocolDatabaseExecuteSQLSyncPrintColorCyan, |
| TestProtocolDatabaseExecuteSQLSyncPrintColorMagenta, |
| TestProtocolDatabaseExecuteSQLSyncPrintColorYellow, |
| TestProtocolDatabaseExecuteSQLSyncPrintColorBlack, |
| }; |
| |
| typedef NS_ENUM(NSInteger, TestProtocolDatabaseExecuteSQLAsyncPrintColor) { |
| TestProtocolDatabaseExecuteSQLAsyncPrintColorCyan, |
| TestProtocolDatabaseExecuteSQLAsyncPrintColorMagenta, |
| TestProtocolDatabaseExecuteSQLAsyncPrintColorYellow, |
| TestProtocolDatabaseExecuteSQLAsyncPrintColorBlack, |
| }; |
| |
| |
| __attribute__((visibility ("default"))) |
| @interface TestProtocolDatabaseError : RWIProtocolJSONObject |
| - (instancetype)initWithPayload:(NSDictionary<NSString *, id> *)payload; |
| - (instancetype)initWithProtocolObject:(RWIProtocolJSONObject *)jsonObject; |
| - (instancetype)initWithMessage:(NSString *)message code:(int)code; |
| /* required */ @property (nonatomic, copy) NSString *message; |
| /* required */ @property (nonatomic, assign) int code; |
| @end |
| |
| @protocol TestProtocolDatabaseDomainHandler <NSObject> |
| @required |
| - (void)executeSQLSyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, TestProtocolDatabaseError **sqlError, TestProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query; |
| - (void)executeSQLAsyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, TestProtocolDatabaseError **sqlError, TestProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query; |
| - (void)executeSQLSyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, TestProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, TestProtocolDatabasePrimaryColors screenColor, TestProtocolDatabaseExecuteSQLSyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query; |
| - (void)executeSQLAsyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, TestProtocolDatabaseError *sqlError, TestProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, TestProtocolDatabaseExecuteSQLAsyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query; |
| @end |
| |
| |
| |
| |
| #import <WebInspector/RWIProtocolBuildCompatibilityObjects.h> |
| |
| ### End File: TestProtocol.h |
| |
| ### Begin File: TestProtocolInternal.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocol.h" |
| #import "TestProtocolJSONObjectPrivate.h" |
| #import <JavaScriptCore/AugmentableInspectorController.h> |
| #import <wtf/JSONValues.h> |
| |
| |
| |
| |
| ### End File: TestProtocolInternal.h |
| |
| ### Begin File: TestProtocolTypeConversions.h |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocol.h" |
| #import <WebInspector/RWIProtocolArrayConversions.h> |
| |
| namespace Inspector { |
| |
| template<typename ObjCEnumType> |
| Optional<ObjCEnumType> fromProtocolString(const String& value); |
| |
| inline String toProtocolString(TestProtocolPlatform value) |
| { |
| switch(value) { |
| case TestProtocolPlatformAll: |
| return "all"_s; |
| case TestProtocolPlatformGeneric: |
| return "generic"_s; |
| case TestProtocolPlatformIOS: |
| return "ios"_s; |
| case TestProtocolPlatformMacOS: |
| return "macos"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolPlatform> fromProtocolString(const String& value) |
| { |
| if (value == "all") |
| return TestProtocolPlatformAll; |
| if (value == "generic") |
| return TestProtocolPlatformGeneric; |
| if (value == "ios") |
| return TestProtocolPlatformIOS; |
| if (value == "macos") |
| return TestProtocolPlatformMacOS; |
| return WTF::nullopt; |
| } |
| |
| |
| inline String toProtocolString(TestProtocolDatabasePrimaryColors value) |
| { |
| switch(value) { |
| case TestProtocolDatabasePrimaryColorsRed: |
| return "red"_s; |
| case TestProtocolDatabasePrimaryColorsGreen: |
| return "green"_s; |
| case TestProtocolDatabasePrimaryColorsBlue: |
| return "blue"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolDatabasePrimaryColors> fromProtocolString(const String& value) |
| { |
| if (value == "red") |
| return TestProtocolDatabasePrimaryColorsRed; |
| if (value == "green") |
| return TestProtocolDatabasePrimaryColorsGreen; |
| if (value == "blue") |
| return TestProtocolDatabasePrimaryColorsBlue; |
| return WTF::nullopt; |
| } |
| |
| inline String toProtocolString(TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor value) |
| { |
| switch(value) { |
| case TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan: |
| return "cyan"_s; |
| case TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta: |
| return "magenta"_s; |
| case TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow: |
| return "yellow"_s; |
| case TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack: |
| return "black"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor> fromProtocolString(const String& value) |
| { |
| if (value == "cyan") |
| return TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan; |
| if (value == "magenta") |
| return TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta; |
| if (value == "yellow") |
| return TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow; |
| if (value == "black") |
| return TestProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack; |
| return WTF::nullopt; |
| } |
| |
| inline String toProtocolString(TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor value) |
| { |
| switch(value) { |
| case TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan: |
| return "cyan"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta: |
| return "magenta"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow: |
| return "yellow"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack: |
| return "black"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor> fromProtocolString(const String& value) |
| { |
| if (value == "cyan") |
| return TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan; |
| if (value == "magenta") |
| return TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta; |
| if (value == "yellow") |
| return TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow; |
| if (value == "black") |
| return TestProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack; |
| return WTF::nullopt; |
| } |
| |
| inline String toProtocolString(TestProtocolDatabaseExecuteSQLSyncPrintColor value) |
| { |
| switch(value) { |
| case TestProtocolDatabaseExecuteSQLSyncPrintColorCyan: |
| return "cyan"_s; |
| case TestProtocolDatabaseExecuteSQLSyncPrintColorMagenta: |
| return "magenta"_s; |
| case TestProtocolDatabaseExecuteSQLSyncPrintColorYellow: |
| return "yellow"_s; |
| case TestProtocolDatabaseExecuteSQLSyncPrintColorBlack: |
| return "black"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolDatabaseExecuteSQLSyncPrintColor> fromProtocolString(const String& value) |
| { |
| if (value == "cyan") |
| return TestProtocolDatabaseExecuteSQLSyncPrintColorCyan; |
| if (value == "magenta") |
| return TestProtocolDatabaseExecuteSQLSyncPrintColorMagenta; |
| if (value == "yellow") |
| return TestProtocolDatabaseExecuteSQLSyncPrintColorYellow; |
| if (value == "black") |
| return TestProtocolDatabaseExecuteSQLSyncPrintColorBlack; |
| return WTF::nullopt; |
| } |
| |
| inline String toProtocolString(TestProtocolDatabaseExecuteSQLAsyncPrintColor value) |
| { |
| switch(value) { |
| case TestProtocolDatabaseExecuteSQLAsyncPrintColorCyan: |
| return "cyan"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncPrintColorMagenta: |
| return "magenta"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncPrintColorYellow: |
| return "yellow"_s; |
| case TestProtocolDatabaseExecuteSQLAsyncPrintColorBlack: |
| return "black"_s; |
| } |
| } |
| |
| template<> |
| inline Optional<TestProtocolDatabaseExecuteSQLAsyncPrintColor> fromProtocolString(const String& value) |
| { |
| if (value == "cyan") |
| return TestProtocolDatabaseExecuteSQLAsyncPrintColorCyan; |
| if (value == "magenta") |
| return TestProtocolDatabaseExecuteSQLAsyncPrintColorMagenta; |
| if (value == "yellow") |
| return TestProtocolDatabaseExecuteSQLAsyncPrintColorYellow; |
| if (value == "black") |
| return TestProtocolDatabaseExecuteSQLAsyncPrintColorBlack; |
| return WTF::nullopt; |
| } |
| |
| } // namespace Inspector |
| |
| ### End File: TestProtocolTypeConversions.h |
| |
| ### Begin File: TestProtocolTypeConversions.mm |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocolTypeConversions.h" |
| |
| #import "TestProtocol.h" |
| #import "TestProtocolTypeParser.h" |
| #import <WebInspector/RWIProtocolJSONObjectPrivate.h> |
| |
| using namespace Inspector; |
| |
| @interface TestProtocolTypeConversions (DatabaseDomain) |
| |
| + (void)_parseDatabaseId:(NSNumber **)outValue fromPayload:(id)payload; |
| + (void)_parsePrimaryColors:(NSNumber **)outValue fromPayload:(id)payload; |
| + (void)_parseColorList:(NSArray/*<NSString>*/ **)outValue fromPayload:(id)payload; |
| + (void)_parseError:(TestProtocolDatabaseError **)outValue fromPayload:(id)payload; |
| |
| @end |
| |
| @implementation TestProtocolTypeConversions (DatabaseDomain) |
| |
| + (void)_parseDatabaseId:(NSNumber **)outValue fromPayload:(id)payload |
| { |
| THROW_EXCEPTION_FOR_BAD_TYPE(payload, [NSNumber class]); |
| *outValue = (NSNumber *)payload; |
| } |
| |
| + (void)_parsePrimaryColors:(NSNumber **)outValue fromPayload:(id)payload |
| { |
| THROW_EXCEPTION_FOR_BAD_TYPE(payload, [NSString class]); |
| Optional<TestProtocolDatabasePrimaryColors> result = Inspector::fromProtocolString<TestProtocolDatabasePrimaryColors>(payload); |
| THROW_EXCEPTION_FOR_BAD_ENUM_VALUE(result, @"PrimaryColors"); |
| *outValue = @(result.value()); |
| } |
| |
| + (void)_parseColorList:(NSArray/*<NSString>*/ **)outValue fromPayload:(id)payload |
| { |
| THROW_EXCEPTION_FOR_BAD_TYPE(payload, [NSArray/*<NSString>*/ class]); |
| *outValue = (NSArray/*<NSString>*/ *)payload; |
| } |
| |
| + (void)_parseError:(TestProtocolDatabaseError **)outValue fromPayload:(id)payload |
| { |
| THROW_EXCEPTION_FOR_BAD_TYPE(payload, [NSDictionary class]); |
| *outValue = [[TestProtocolDatabaseError alloc] initWithPayload:payload]; |
| } |
| |
| @end |
| |
| |
| ### End File: TestProtocolTypeConversions.mm |
| |
| ### Begin File: TestProtocolTypes.mm |
| /* |
| * Copyright (C) 2013 Google Inc. All rights reserved. |
| * Copyright (C) 2013-2016 Apple Inc. All rights reserved. |
| * Copyright (C) 2014 University of Washington. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * |
| * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
| * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
| * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
| * THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json |
| // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py |
| |
| #import "TestProtocolInternal.h" |
| |
| #import "TestProtocolTypeConversions.h" |
| #import <WebInspector/RWIProtocolJSONObjectPrivate.h> |
| #import <wtf/Assertions.h> |
| #import <wtf/JSONValues.h> |
| |
| using namespace Inspector; |
| |
| |
| @implementation TestProtocolDatabaseError |
| |
| - (instancetype)initWithPayload:(nonnull NSDictionary<NSString *, id> *)payload |
| { |
| if (!(self = [super init])) |
| return nil; |
| |
| THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(payload[@"message"], @"message"); |
| self.message = payload[@"message"]; |
| |
| THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(payload[@"code"], @"code"); |
| self.code = [payload[@"code"] integerValue]; |
| |
| return self; |
| } |
| - (instancetype)initWithProtocolObject:(RWIProtocolJSONObject *)object |
| { |
| if (!(self = [super initWithJSONObject:[object toJSONObject].get()])) |
| return nil; |
| |
| return self; |
| } |
| |
| - (instancetype)initWithMessage:(NSString *)message code:(int)code |
| { |
| if (!(self = [super init])) |
| return nil; |
| |
| THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message"); |
| |
| self.message = message; |
| self.code = code; |
| |
| return self; |
| } |
| |
| - (void)setMessage:(NSString *)message |
| { |
| [super setString:message forKey:@"message"]; |
| } |
| |
| - (NSString *)message |
| { |
| return [super stringForKey:@"message"]; |
| } |
| |
| - (void)setCode:(int)code |
| { |
| [super setInteger:code forKey:@"code"]; |
| } |
| |
| - (int)code |
| { |
| return [super integerForKey:@"code"]; |
| } |
| |
| @end |
| |
| |
| ### End File: TestProtocolTypes.mm |