summaryrefslogtreecommitdiffstats
path: root/devtools/shared/specs/preference.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/shared/specs/preference.js')
-rw-r--r--devtools/shared/specs/preference.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/devtools/shared/specs/preference.js b/devtools/shared/specs/preference.js
new file mode 100644
index 0000000000..994694624b
--- /dev/null
+++ b/devtools/shared/specs/preference.js
@@ -0,0 +1,51 @@
+/* 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 { Arg, RetVal, generateActorSpec } = require("devtools/shared/protocol");
+
+const preferenceSpec = generateActorSpec({
+ typeName: "preference",
+
+ methods: {
+ getTraits: {
+ request: {},
+ response: { traits: RetVal("json") },
+ },
+ getBoolPref: {
+ request: { value: Arg(0) },
+ response: { value: RetVal("boolean") },
+ },
+ getCharPref: {
+ request: { value: Arg(0) },
+ response: { value: RetVal("string") },
+ },
+ getIntPref: {
+ request: { value: Arg(0) },
+ response: { value: RetVal("number") },
+ },
+ getAllPrefs: {
+ request: {},
+ response: { value: RetVal("json") },
+ },
+ setBoolPref: {
+ request: { name: Arg(0), value: Arg(1) },
+ response: {},
+ },
+ setCharPref: {
+ request: { name: Arg(0), value: Arg(1) },
+ response: {},
+ },
+ setIntPref: {
+ request: { name: Arg(0), value: Arg(1) },
+ response: {},
+ },
+ clearUserPref: {
+ request: { name: Arg(0) },
+ response: {},
+ },
+ },
+});
+
+exports.preferenceSpec = preferenceSpec;