summaryrefslogtreecommitdiffstats
path: root/devtools/shared/specs/descriptors
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/shared/specs/descriptors')
-rw-r--r--devtools/shared/specs/descriptors/moz.build12
-rw-r--r--devtools/shared/specs/descriptors/process.js41
-rw-r--r--devtools/shared/specs/descriptors/tab.js50
-rw-r--r--devtools/shared/specs/descriptors/webextension.js58
-rw-r--r--devtools/shared/specs/descriptors/worker.js32
5 files changed, 193 insertions, 0 deletions
diff --git a/devtools/shared/specs/descriptors/moz.build b/devtools/shared/specs/descriptors/moz.build
new file mode 100644
index 0000000000..bf297b3dcb
--- /dev/null
+++ b/devtools/shared/specs/descriptors/moz.build
@@ -0,0 +1,12 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+DevToolsModules(
+ "process.js",
+ "tab.js",
+ "webextension.js",
+ "worker.js",
+)
diff --git a/devtools/shared/specs/descriptors/process.js b/devtools/shared/specs/descriptors/process.js
new file mode 100644
index 0000000000..f9cb1d4ce6
--- /dev/null
+++ b/devtools/shared/specs/descriptors/process.js
@@ -0,0 +1,41 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+const {
+ generateActorSpec,
+ RetVal,
+ Option,
+} = require("resource://devtools/shared/protocol.js");
+
+const processDescriptorSpec = generateActorSpec({
+ typeName: "processDescriptor",
+
+ methods: {
+ getTarget: {
+ request: {},
+ response: {
+ process: RetVal("json"),
+ },
+ },
+ getWatcher: {
+ request: {},
+ response: RetVal("watcher"),
+ },
+ reloadDescriptor: {
+ request: {
+ bypassCache: Option(0, "boolean"),
+ },
+ response: {},
+ },
+ },
+
+ events: {
+ "descriptor-destroyed": {
+ type: "descriptor-destroyed",
+ },
+ },
+});
+
+exports.processDescriptorSpec = processDescriptorSpec;
diff --git a/devtools/shared/specs/descriptors/tab.js b/devtools/shared/specs/descriptors/tab.js
new file mode 100644
index 0000000000..c2c0f69431
--- /dev/null
+++ b/devtools/shared/specs/descriptors/tab.js
@@ -0,0 +1,50 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+const {
+ generateActorSpec,
+ Option,
+ RetVal,
+} = require("resource://devtools/shared/protocol.js");
+
+const tabDescriptorSpec = generateActorSpec({
+ typeName: "tabDescriptor",
+
+ methods: {
+ getTarget: {
+ request: {},
+ response: {
+ frame: RetVal("json"),
+ },
+ },
+ getFavicon: {
+ request: {},
+ response: {
+ favicon: RetVal("string"),
+ },
+ },
+ getWatcher: {
+ request: {
+ isServerTargetSwitchingEnabled: Option(0, "boolean"),
+ isPopupDebuggingEnabled: Option(0, "boolean"),
+ },
+ response: RetVal("watcher"),
+ },
+ reloadDescriptor: {
+ request: {
+ bypassCache: Option(0, "boolean"),
+ },
+ response: {},
+ },
+ },
+
+ events: {
+ "descriptor-destroyed": {
+ type: "descriptor-destroyed",
+ },
+ },
+});
+
+exports.tabDescriptorSpec = tabDescriptorSpec;
diff --git a/devtools/shared/specs/descriptors/webextension.js b/devtools/shared/specs/descriptors/webextension.js
new file mode 100644
index 0000000000..692896fc0a
--- /dev/null
+++ b/devtools/shared/specs/descriptors/webextension.js
@@ -0,0 +1,58 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+const {
+ RetVal,
+ generateActorSpec,
+ Option,
+} = require("resource://devtools/shared/protocol.js");
+
+const webExtensionDescriptorSpec = generateActorSpec({
+ typeName: "webExtensionDescriptor",
+
+ methods: {
+ reload: {
+ request: {},
+ response: { addon: RetVal("json") },
+ },
+
+ terminateBackgroundScript: {
+ request: {},
+ response: {},
+ },
+
+ // @backward-compat { version 70 } The method is now called getTarget
+ connect: {
+ request: {},
+ response: { form: RetVal("json") },
+ },
+
+ getTarget: {
+ request: {},
+ response: { form: RetVal("json") },
+ },
+
+ reloadDescriptor: {
+ request: {
+ bypassCache: Option(0, "boolean"),
+ },
+ response: {},
+ },
+ getWatcher: {
+ request: {
+ isServerTargetSwitchingEnabled: Option(0, "boolean"),
+ },
+ response: RetVal("watcher"),
+ },
+ },
+
+ events: {
+ "descriptor-destroyed": {
+ type: "descriptor-destroyed",
+ },
+ },
+});
+
+exports.webExtensionDescriptorSpec = webExtensionDescriptorSpec;
diff --git a/devtools/shared/specs/descriptors/worker.js b/devtools/shared/specs/descriptors/worker.js
new file mode 100644
index 0000000000..1bf21bcc0a
--- /dev/null
+++ b/devtools/shared/specs/descriptors/worker.js
@@ -0,0 +1,32 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+"use strict";
+
+const {
+ RetVal,
+ generateActorSpec,
+} = require("resource://devtools/shared/protocol.js");
+
+const workerDescriptorSpec = generateActorSpec({
+ typeName: "workerDescriptor",
+
+ methods: {
+ detach: {
+ request: {},
+ response: {},
+ },
+ getTarget: {
+ request: {},
+ response: RetVal("json"),
+ },
+ },
+
+ events: {
+ "descriptor-destroyed": {
+ type: "descriptor-destroyed",
+ },
+ },
+});
+
+exports.workerDescriptorSpec = workerDescriptorSpec;