summaryrefslogtreecommitdiffstats
path: root/devtools/shared/fronts/storage.js
blob: 304e57c6fe43aa9720378210085472a4c4265e1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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 protocol = require("devtools/shared/protocol");
const specs = require("devtools/shared/specs/storage");

for (let childSpec of Object.values(specs.childSpecs)) {
  protocol.FrontClassWithSpec(childSpec, {
    form(form, detail) {
      if (detail === "actorid") {
        this.actorID = form;
        return null;
      }

      this.actorID = form.actor;
      this.hosts = form.hosts;
      return null;
    }
  });
}

const StorageFront = protocol.FrontClassWithSpec(specs.storageSpec, {
  initialize(client, tabForm) {
    protocol.Front.prototype.initialize.call(this, client);
    this.actorID = tabForm.storageActor;
    this.manage(this);
  }
});

exports.StorageFront = StorageFront;