aboutsummaryrefslogtreecommitdiff
path: root/mojo/public/js/lib/control_message_proxy.js
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/public/js/lib/control_message_proxy.js')
-rw-r--r--mojo/public/js/lib/control_message_proxy.js104
1 files changed, 0 insertions, 104 deletions
diff --git a/mojo/public/js/lib/control_message_proxy.js b/mojo/public/js/lib/control_message_proxy.js
deleted file mode 100644
index b6f1d3c..0000000
--- a/mojo/public/js/lib/control_message_proxy.js
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-define("mojo/public/js/lib/control_message_proxy", [
- "mojo/public/interfaces/bindings/interface_control_messages.mojom",
- "mojo/public/js/codec",
- "mojo/public/js/validator",
-], function(controlMessages, codec, validator) {
-
- var Validator = validator.Validator;
-
- function constructRunOrClosePipeMessage(runOrClosePipeInput) {
- var runOrClosePipeMessageParams = new
- controlMessages.RunOrClosePipeMessageParams();
- runOrClosePipeMessageParams.input = runOrClosePipeInput;
-
- var messageName = controlMessages.kRunOrClosePipeMessageId;
- var payloadSize = controlMessages.RunOrClosePipeMessageParams.encodedSize;
- var builder = new codec.MessageBuilder(messageName, payloadSize);
- builder.encodeStruct(controlMessages.RunOrClosePipeMessageParams,
- runOrClosePipeMessageParams);
- var message = builder.finish();
- return message;
- }
-
- function validateControlResponse(message) {
- var messageValidator = new Validator(message);
- var error = messageValidator.validateMessageIsResponse();
- if (error != validator.validationError.NONE) {
- throw error;
- }
-
- if (message.getName() != controlMessages.kRunMessageId) {
- throw new Error("Control message name is not kRunMessageId");
- }
-
- // Validate payload.
- error = controlMessages.RunResponseMessageParams.validate(
- messageValidator, message.getHeaderNumBytes());
- if (error != validator.validationError.NONE) {
- throw error;
- }
- }
-
- function acceptRunResponse(message) {
- validateControlResponse(message);
-
- var reader = new codec.MessageReader(message);
- var runResponseMessageParams = reader.decodeStruct(
- controlMessages.RunResponseMessageParams);
-
- return Promise.resolve(runResponseMessageParams);
- }
-
- /**
- * Sends the given run message through the receiver.
- * Accepts the response message from the receiver and decodes the message
- * struct to RunResponseMessageParams.
- *
- * @param {Router} receiver.
- * @param {RunMessageParams} runMessageParams to be sent via a message.
- * @return {Promise} that resolves to a RunResponseMessageParams.
- */
- function sendRunMessage(receiver, runMessageParams) {
- var messageName = controlMessages.kRunMessageId;
- var payloadSize = controlMessages.RunMessageParams.encodedSize;
- // |requestID| is set to 0, but is later properly set by Router.
- var builder = new codec.MessageWithRequestIDBuilder(messageName,
- payloadSize, codec.kMessageExpectsResponse, 0);
- builder.encodeStruct(controlMessages.RunMessageParams, runMessageParams);
- var message = builder.finish();
-
- return receiver.acceptAndExpectResponse(message).then(acceptRunResponse);
- }
-
- function ControlMessageProxy(receiver) {
- this.receiver_ = receiver;
- }
-
- ControlMessageProxy.prototype.queryVersion = function() {
- var runMessageParams = new controlMessages.RunMessageParams();
- runMessageParams.input = new controlMessages.RunInput();
- runMessageParams.input.query_version = new controlMessages.QueryVersion();
-
- return sendRunMessage(this.receiver_, runMessageParams).then(function(
- runResponseMessageParams) {
- return runResponseMessageParams.output.query_version_result.version;
- });
- };
-
- ControlMessageProxy.prototype.requireVersion = function(version) {
- var runOrClosePipeInput = new controlMessages.RunOrClosePipeInput();
- runOrClosePipeInput.require_version = new controlMessages.RequireVersion({
- 'version': version});
- var message = constructRunOrClosePipeMessage(runOrClosePipeInput);
- this.receiver_.accept(message);
- };
-
- var exports = {};
- exports.ControlMessageProxy = ControlMessageProxy;
-
- return exports;
-});