Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(301)

Side by Side Diff: mojo/public/js/lib/control_message_proxy.js

Issue 2820783002: Add associated interfaces & bindings. (Closed)
Patch Set: Change Router.prototype.accept. Add a TODO for endpoint client not attached. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 define("mojo/public/js/lib/control_message_proxy", [ 5 define("mojo/public/js/lib/control_message_proxy", [
6 "mojo/public/interfaces/bindings/interface_control_messages.mojom", 6 "mojo/public/interfaces/bindings/interface_control_messages.mojom",
7 "mojo/public/js/codec", 7 "mojo/public/js/codec",
8 "mojo/public/js/validator", 8 "mojo/public/js/validator",
9 ], function(controlMessages, codec, validator) { 9 ], function(controlMessages, codec, validator) {
10 10
11 var Validator = validator.Validator; 11 var Validator = validator.Validator;
12 12
13 function constructRunOrClosePipeMessage(runOrClosePipeInput) { 13 function constructRunOrClosePipeMessage(runOrClosePipeInput) {
14 var runOrClosePipeMessageParams = new 14 var runOrClosePipeMessageParams = new
15 controlMessages.RunOrClosePipeMessageParams(); 15 controlMessages.RunOrClosePipeMessageParams();
16 runOrClosePipeMessageParams.input = runOrClosePipeInput; 16 runOrClosePipeMessageParams.input = runOrClosePipeInput;
17 17
18 var messageName = controlMessages.kRunOrClosePipeMessageId; 18 var messageName = controlMessages.kRunOrClosePipeMessageId;
19 var payloadSize = controlMessages.RunOrClosePipeMessageParams.encodedSize; 19 var payloadSize = controlMessages.RunOrClosePipeMessageParams.encodedSize;
20 var builder = new codec.MessageBuilder(messageName, payloadSize); 20 var builder = new codec.MessageV0Builder(messageName, payloadSize);
21 builder.encodeStruct(controlMessages.RunOrClosePipeMessageParams, 21 builder.encodeStruct(controlMessages.RunOrClosePipeMessageParams,
22 runOrClosePipeMessageParams); 22 runOrClosePipeMessageParams);
23 var message = builder.finish(); 23 var message = builder.finish();
24 return message; 24 return message;
25 } 25 }
26 26
27 function validateControlResponse(message) { 27 function validateControlResponse(message) {
28 var messageValidator = new Validator(message); 28 var messageValidator = new Validator(message);
29 var error = messageValidator.validateMessageIsResponse(); 29 var error = messageValidator.validateMessageIsResponse();
30 if (error != validator.validationError.NONE) { 30 if (error != validator.validationError.NONE) {
(...skipping 28 matching lines...) Expand all
59 * struct to RunResponseMessageParams. 59 * struct to RunResponseMessageParams.
60 * 60 *
61 * @param {Router} receiver. 61 * @param {Router} receiver.
62 * @param {RunMessageParams} runMessageParams to be sent via a message. 62 * @param {RunMessageParams} runMessageParams to be sent via a message.
63 * @return {Promise} that resolves to a RunResponseMessageParams. 63 * @return {Promise} that resolves to a RunResponseMessageParams.
64 */ 64 */
65 function sendRunMessage(receiver, runMessageParams) { 65 function sendRunMessage(receiver, runMessageParams) {
66 var messageName = controlMessages.kRunMessageId; 66 var messageName = controlMessages.kRunMessageId;
67 var payloadSize = controlMessages.RunMessageParams.encodedSize; 67 var payloadSize = controlMessages.RunMessageParams.encodedSize;
68 // |requestID| is set to 0, but is later properly set by Router. 68 // |requestID| is set to 0, but is later properly set by Router.
69 var builder = new codec.MessageWithRequestIDBuilder(messageName, 69 var builder = new codec.MessageV1Builder(messageName,
70 payloadSize, codec.kMessageExpectsResponse, 0); 70 payloadSize, codec.kMessageExpectsResponse, 0);
71 builder.encodeStruct(controlMessages.RunMessageParams, runMessageParams); 71 builder.encodeStruct(controlMessages.RunMessageParams, runMessageParams);
72 var message = builder.finish(); 72 var message = builder.finish();
73 73
74 return receiver.acceptAndExpectResponse(message).then(acceptRunResponse); 74 return receiver.acceptAndExpectResponse(message).then(acceptRunResponse);
75 } 75 }
76 76
77 function ControlMessageProxy(receiver) { 77 function ControlMessageProxy(receiver) {
78 this.receiver_ = receiver; 78 this.receiver_ = receiver;
79 } 79 }
(...skipping 15 matching lines...) Expand all
95 'version': version}); 95 'version': version});
96 var message = constructRunOrClosePipeMessage(runOrClosePipeInput); 96 var message = constructRunOrClosePipeMessage(runOrClosePipeInput);
97 this.receiver_.accept(message); 97 this.receiver_.accept(message);
98 }; 98 };
99 99
100 var exports = {}; 100 var exports = {};
101 exports.ControlMessageProxy = ControlMessageProxy; 101 exports.ControlMessageProxy = ControlMessageProxy;
102 102
103 return exports; 103 return exports;
104 }); 104 });
OLDNEW
« no previous file with comments | « mojo/public/js/lib/control_message_handler.js ('k') | mojo/public/js/lib/interface_endpoint_client.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698