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

Unified Diff: third_party/WebKit/LayoutTests/usb/resources/permission_provider.mojom.js

Issue 1472693004: [Do not commit] Sample USB layout tests with Mojo service mocks (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@usb-testing-4
Patch Set: rebase Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/usb/resources/permission_provider.mojom.js
diff --git a/third_party/WebKit/LayoutTests/usb/resources/permission_provider.mojom.js b/third_party/WebKit/LayoutTests/usb/resources/permission_provider.mojom.js
new file mode 100644
index 0000000000000000000000000000000000000000..77f0fb3a0d8b21b3135d04abde998a1ed647b786
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/usb/resources/permission_provider.mojom.js
@@ -0,0 +1,651 @@
+// Copyright 2014 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("device/devices_app/usb/public/interfaces/permission_provider.mojom", [
+ "mojo/public/js/bindings",
+ "mojo/public/js/codec",
+ "mojo/public/js/connection",
+ "mojo/public/js/core",
+ "mojo/public/js/validator",
+ "device/devices_app/usb/public/interfaces/device.mojom",
+], function(bindings, codec, connection, core, validator, device$) {
+
+ function PermissionProvider_HasDevicePermission_Params(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasDevicePermission_Params.prototype.initDefaults_ = function() {
+ this.requested_devices = null;
+ };
+ PermissionProvider_HasDevicePermission_Params.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasDevicePermission_Params.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasDevicePermission_Params.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+ // validate PermissionProvider_HasDevicePermission_Params.requested_devices
+ err = messageValidator.validateArrayPointer(offset + codec.kStructHeaderSize + 0, 8, new codec.PointerTo(device$.DeviceInfo), false, [0], 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasDevicePermission_Params.encodedSize = codec.kStructHeaderSize + 8;
+
+ PermissionProvider_HasDevicePermission_Params.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasDevicePermission_Params();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.requested_devices = decoder.decodeArrayPointer(new codec.PointerTo(device$.DeviceInfo));
+ return val;
+ };
+
+ PermissionProvider_HasDevicePermission_Params.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasDevicePermission_Params.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeArrayPointer(new codec.PointerTo(device$.DeviceInfo), val.requested_devices);
+ };
+
+ function PermissionProvider_HasDevicePermission_ResponseParams(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasDevicePermission_ResponseParams.prototype.initDefaults_ = function() {
+ this.allowed_guids = null;
+ };
+ PermissionProvider_HasDevicePermission_ResponseParams.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasDevicePermission_ResponseParams.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasDevicePermission_ResponseParams.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+ // validate PermissionProvider_HasDevicePermission_ResponseParams.allowed_guids
+ err = messageValidator.validateArrayPointer(offset + codec.kStructHeaderSize + 0, 8, codec.String, false, [0, 0], 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasDevicePermission_ResponseParams.encodedSize = codec.kStructHeaderSize + 8;
+
+ PermissionProvider_HasDevicePermission_ResponseParams.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasDevicePermission_ResponseParams();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.allowed_guids = decoder.decodeArrayPointer(codec.String);
+ return val;
+ };
+
+ PermissionProvider_HasDevicePermission_ResponseParams.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasDevicePermission_ResponseParams.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeArrayPointer(codec.String, val.allowed_guids);
+ };
+
+ function PermissionProvider_HasConfigurationPermission_Params(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasConfigurationPermission_Params.prototype.initDefaults_ = function() {
+ this.requested_configuration = 0;
+ this.device = null;
+ };
+ PermissionProvider_HasConfigurationPermission_Params.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasConfigurationPermission_Params.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasConfigurationPermission_Params.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+
+ // validate PermissionProvider_HasConfigurationPermission_Params.device
+ err = messageValidator.validateStructPointer(offset + codec.kStructHeaderSize + 8, device$.DeviceInfo, false);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasConfigurationPermission_Params.encodedSize = codec.kStructHeaderSize + 16;
+
+ PermissionProvider_HasConfigurationPermission_Params.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasConfigurationPermission_Params();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.requested_configuration = decoder.decodeStruct(codec.Uint8);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ val.device = decoder.decodeStructPointer(device$.DeviceInfo);
+ return val;
+ };
+
+ PermissionProvider_HasConfigurationPermission_Params.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasConfigurationPermission_Params.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeStruct(codec.Uint8, val.requested_configuration);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.encodeStructPointer(device$.DeviceInfo, val.device);
+ };
+
+ function PermissionProvider_HasConfigurationPermission_ResponseParams(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasConfigurationPermission_ResponseParams.prototype.initDefaults_ = function() {
+ this.allowed = false;
+ };
+ PermissionProvider_HasConfigurationPermission_ResponseParams.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasConfigurationPermission_ResponseParams.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasConfigurationPermission_ResponseParams.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasConfigurationPermission_ResponseParams.encodedSize = codec.kStructHeaderSize + 8;
+
+ PermissionProvider_HasConfigurationPermission_ResponseParams.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasConfigurationPermission_ResponseParams();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.allowed = decoder.decodeStruct(codec.Uint8);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ return val;
+ };
+
+ PermissionProvider_HasConfigurationPermission_ResponseParams.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasConfigurationPermission_ResponseParams.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeStruct(codec.Uint8, val.allowed);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ };
+
+ function PermissionProvider_HasInterfacePermission_Params(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasInterfacePermission_Params.prototype.initDefaults_ = function() {
+ this.requested_interface = 0;
+ this.configuration_value = 0;
+ this.device = null;
+ };
+ PermissionProvider_HasInterfacePermission_Params.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasInterfacePermission_Params.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasInterfacePermission_Params.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+
+
+ // validate PermissionProvider_HasInterfacePermission_Params.device
+ err = messageValidator.validateStructPointer(offset + codec.kStructHeaderSize + 8, device$.DeviceInfo, false);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasInterfacePermission_Params.encodedSize = codec.kStructHeaderSize + 16;
+
+ PermissionProvider_HasInterfacePermission_Params.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasInterfacePermission_Params();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.requested_interface = decoder.decodeStruct(codec.Uint8);
+ val.configuration_value = decoder.decodeStruct(codec.Uint8);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ val.device = decoder.decodeStructPointer(device$.DeviceInfo);
+ return val;
+ };
+
+ PermissionProvider_HasInterfacePermission_Params.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasInterfacePermission_Params.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeStruct(codec.Uint8, val.requested_interface);
+ encoder.encodeStruct(codec.Uint8, val.configuration_value);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.encodeStructPointer(device$.DeviceInfo, val.device);
+ };
+
+ function PermissionProvider_HasInterfacePermission_ResponseParams(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_HasInterfacePermission_ResponseParams.prototype.initDefaults_ = function() {
+ this.allowed = false;
+ };
+ PermissionProvider_HasInterfacePermission_ResponseParams.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_HasInterfacePermission_ResponseParams.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_HasInterfacePermission_ResponseParams.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_HasInterfacePermission_ResponseParams.encodedSize = codec.kStructHeaderSize + 8;
+
+ PermissionProvider_HasInterfacePermission_ResponseParams.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_HasInterfacePermission_ResponseParams();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.allowed = decoder.decodeStruct(codec.Uint8);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ return val;
+ };
+
+ PermissionProvider_HasInterfacePermission_ResponseParams.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_HasInterfacePermission_ResponseParams.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeStruct(codec.Uint8, val.allowed);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ };
+
+ function PermissionProvider_Bind_Params(values) {
+ this.initDefaults_();
+ this.initFields_(values);
+ }
+
+
+ PermissionProvider_Bind_Params.prototype.initDefaults_ = function() {
+ this.request = null;
+ };
+ PermissionProvider_Bind_Params.prototype.initFields_ = function(fields) {
+ for(var field in fields) {
+ if (this.hasOwnProperty(field))
+ this[field] = fields[field];
+ }
+ };
+
+ PermissionProvider_Bind_Params.validate = function(messageValidator, offset) {
+ var err;
+ err = messageValidator.validateStructHeader(offset, PermissionProvider_Bind_Params.encodedSize, 0);
+ if (err !== validator.validationError.NONE)
+ return err;
+
+
+ // validate PermissionProvider_Bind_Params.request
+ err = messageValidator.validateHandle(offset + codec.kStructHeaderSize + 0, false)
+ if (err !== validator.validationError.NONE)
+ return err;
+
+ return validator.validationError.NONE;
+ };
+
+ PermissionProvider_Bind_Params.encodedSize = codec.kStructHeaderSize + 8;
+
+ PermissionProvider_Bind_Params.decode = function(decoder) {
+ var packed;
+ var val = new PermissionProvider_Bind_Params();
+ var numberOfBytes = decoder.readUint32();
+ var version = decoder.readUint32();
+ val.request = decoder.decodeStruct(codec.Handle);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ decoder.skip(1);
+ return val;
+ };
+
+ PermissionProvider_Bind_Params.encode = function(encoder, val) {
+ var packed;
+ encoder.writeUint32(PermissionProvider_Bind_Params.encodedSize);
+ encoder.writeUint32(0);
+ encoder.encodeStruct(codec.Handle, val.request);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ encoder.skip(1);
+ };
+
+ var kPermissionProvider_HasDevicePermission_Name = 0;
+ var kPermissionProvider_HasConfigurationPermission_Name = 1;
+ var kPermissionProvider_HasInterfacePermission_Name = 2;
+ var kPermissionProvider_Bind_Name = 3;
+
+ function PermissionProviderProxy(receiver) {
+ bindings.ProxyBase.call(this, receiver);
+ }
+ PermissionProviderProxy.prototype = Object.create(bindings.ProxyBase.prototype);
+ PermissionProviderProxy.prototype.hasDevicePermission = function(requested_devices) {
+ var params = new PermissionProvider_HasDevicePermission_Params();
+ params.requested_devices = requested_devices;
+ return new Promise(function(resolve, reject) {
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasDevicePermission_Name,
+ codec.align(PermissionProvider_HasDevicePermission_Params.encodedSize),
+ codec.kMessageExpectsResponse, 0);
+ builder.encodeStruct(PermissionProvider_HasDevicePermission_Params, params);
+ var message = builder.finish();
+ this.receiver_.acceptAndExpectResponse(message).then(function(message) {
+ var reader = new codec.MessageReader(message);
+ var responseParams =
+ reader.decodeStruct(PermissionProvider_HasDevicePermission_ResponseParams);
+ resolve(responseParams);
+ }).catch(function(result) {
+ reject(Error("Connection error: " + result));
+ });
+ }.bind(this));
+ };
+ PermissionProviderProxy.prototype.hasConfigurationPermission = function(requested_configuration, device) {
+ var params = new PermissionProvider_HasConfigurationPermission_Params();
+ params.requested_configuration = requested_configuration;
+ params.device = device;
+ return new Promise(function(resolve, reject) {
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasConfigurationPermission_Name,
+ codec.align(PermissionProvider_HasConfigurationPermission_Params.encodedSize),
+ codec.kMessageExpectsResponse, 0);
+ builder.encodeStruct(PermissionProvider_HasConfigurationPermission_Params, params);
+ var message = builder.finish();
+ this.receiver_.acceptAndExpectResponse(message).then(function(message) {
+ var reader = new codec.MessageReader(message);
+ var responseParams =
+ reader.decodeStruct(PermissionProvider_HasConfigurationPermission_ResponseParams);
+ resolve(responseParams);
+ }).catch(function(result) {
+ reject(Error("Connection error: " + result));
+ });
+ }.bind(this));
+ };
+ PermissionProviderProxy.prototype.hasInterfacePermission = function(requested_interface, configuration_value, device) {
+ var params = new PermissionProvider_HasInterfacePermission_Params();
+ params.requested_interface = requested_interface;
+ params.configuration_value = configuration_value;
+ params.device = device;
+ return new Promise(function(resolve, reject) {
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasInterfacePermission_Name,
+ codec.align(PermissionProvider_HasInterfacePermission_Params.encodedSize),
+ codec.kMessageExpectsResponse, 0);
+ builder.encodeStruct(PermissionProvider_HasInterfacePermission_Params, params);
+ var message = builder.finish();
+ this.receiver_.acceptAndExpectResponse(message).then(function(message) {
+ var reader = new codec.MessageReader(message);
+ var responseParams =
+ reader.decodeStruct(PermissionProvider_HasInterfacePermission_ResponseParams);
+ resolve(responseParams);
+ }).catch(function(result) {
+ reject(Error("Connection error: " + result));
+ });
+ }.bind(this));
+ };
+ PermissionProviderProxy.prototype.bind = function(request) {
+ var params = new PermissionProvider_Bind_Params();
+ params.request = core.isHandle(request) ? request : connection.bindProxy(request, PermissionProvider);
+ var builder = new codec.MessageBuilder(
+ kPermissionProvider_Bind_Name,
+ codec.align(PermissionProvider_Bind_Params.encodedSize));
+ builder.encodeStruct(PermissionProvider_Bind_Params, params);
+ var message = builder.finish();
+ this.receiver_.accept(message);
+ };
+
+ function PermissionProviderStub(delegate) {
+ bindings.StubBase.call(this, delegate);
+ }
+ PermissionProviderStub.prototype = Object.create(bindings.StubBase.prototype);
+ PermissionProviderStub.prototype.hasDevicePermission = function(requested_devices) {
+ return bindings.StubBindings(this).delegate && bindings.StubBindings(this).delegate.hasDevicePermission && bindings.StubBindings(this).delegate.hasDevicePermission(requested_devices);
+ }
+ PermissionProviderStub.prototype.hasConfigurationPermission = function(requested_configuration, device) {
+ return bindings.StubBindings(this).delegate && bindings.StubBindings(this).delegate.hasConfigurationPermission && bindings.StubBindings(this).delegate.hasConfigurationPermission(requested_configuration, device);
+ }
+ PermissionProviderStub.prototype.hasInterfacePermission = function(requested_interface, configuration_value, device) {
+ return bindings.StubBindings(this).delegate && bindings.StubBindings(this).delegate.hasInterfacePermission && bindings.StubBindings(this).delegate.hasInterfacePermission(requested_interface, configuration_value, device);
+ }
+ PermissionProviderStub.prototype.bind = function(request) {
+ return bindings.StubBindings(this).delegate && bindings.StubBindings(this).delegate.bind && bindings.StubBindings(this).delegate.bind(connection.bindHandleToStub(request, PermissionProvider));
+ }
+
+ PermissionProviderStub.prototype.accept = function(message) {
+ var reader = new codec.MessageReader(message);
+ switch (reader.messageName) {
+ case kPermissionProvider_Bind_Name:
+ var params = reader.decodeStruct(PermissionProvider_Bind_Params);
+ this.bind(params.request);
+ return true;
+ default:
+ return false;
+ }
+ };
+
+ PermissionProviderStub.prototype.acceptWithResponder =
+ function(message, responder) {
+ var reader = new codec.MessageReader(message);
+ switch (reader.messageName) {
+ case kPermissionProvider_HasDevicePermission_Name:
+ var params = reader.decodeStruct(PermissionProvider_HasDevicePermission_Params);
+ return this.hasDevicePermission(params.requested_devices).then(function(response) {
+ var responseParams =
+ new PermissionProvider_HasDevicePermission_ResponseParams();
+ responseParams.allowed_guids = response.allowed_guids;
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasDevicePermission_Name,
+ codec.align(PermissionProvider_HasDevicePermission_ResponseParams.encodedSize),
+ codec.kMessageIsResponse, reader.requestID);
+ builder.encodeStruct(PermissionProvider_HasDevicePermission_ResponseParams,
+ responseParams);
+ var message = builder.finish();
+ responder.accept(message);
+ });
+ case kPermissionProvider_HasConfigurationPermission_Name:
+ var params = reader.decodeStruct(PermissionProvider_HasConfigurationPermission_Params);
+ return this.hasConfigurationPermission(params.requested_configuration, params.device).then(function(response) {
+ var responseParams =
+ new PermissionProvider_HasConfigurationPermission_ResponseParams();
+ responseParams.allowed = response.allowed;
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasConfigurationPermission_Name,
+ codec.align(PermissionProvider_HasConfigurationPermission_ResponseParams.encodedSize),
+ codec.kMessageIsResponse, reader.requestID);
+ builder.encodeStruct(PermissionProvider_HasConfigurationPermission_ResponseParams,
+ responseParams);
+ var message = builder.finish();
+ responder.accept(message);
+ });
+ case kPermissionProvider_HasInterfacePermission_Name:
+ var params = reader.decodeStruct(PermissionProvider_HasInterfacePermission_Params);
+ return this.hasInterfacePermission(params.requested_interface, params.configuration_value, params.device).then(function(response) {
+ var responseParams =
+ new PermissionProvider_HasInterfacePermission_ResponseParams();
+ responseParams.allowed = response.allowed;
+ var builder = new codec.MessageWithRequestIDBuilder(
+ kPermissionProvider_HasInterfacePermission_Name,
+ codec.align(PermissionProvider_HasInterfacePermission_ResponseParams.encodedSize),
+ codec.kMessageIsResponse, reader.requestID);
+ builder.encodeStruct(PermissionProvider_HasInterfacePermission_ResponseParams,
+ responseParams);
+ var message = builder.finish();
+ responder.accept(message);
+ });
+ default:
+ return Promise.reject(Error("Unhandled message: " + reader.messageName));
+ }
+ };
+
+ function validatePermissionProviderRequest(messageValidator) {
+ var message = messageValidator.message;
+ var paramsClass = null;
+ switch (message.getName()) {
+ case kPermissionProvider_HasDevicePermission_Name:
+ if (message.expectsResponse())
+ paramsClass = PermissionProvider_HasDevicePermission_Params;
+ break;
+ case kPermissionProvider_HasConfigurationPermission_Name:
+ if (message.expectsResponse())
+ paramsClass = PermissionProvider_HasConfigurationPermission_Params;
+ break;
+ case kPermissionProvider_HasInterfacePermission_Name:
+ if (message.expectsResponse())
+ paramsClass = PermissionProvider_HasInterfacePermission_Params;
+ break;
+ case kPermissionProvider_Bind_Name:
+ if (!message.expectsResponse() && !message.isResponse())
+ paramsClass = PermissionProvider_Bind_Params;
+ break;
+ }
+ if (paramsClass === null)
+ return validator.validationError.NONE;
+ return paramsClass.validate(messageValidator, messageValidator.message.getHeaderNumBytes());
+ }
+
+ function validatePermissionProviderResponse(messageValidator) {
+ var message = messageValidator.message;
+ var paramsClass = null;
+ switch (message.getName()) {
+ case kPermissionProvider_HasDevicePermission_Name:
+ if (message.isResponse())
+ paramsClass = PermissionProvider_HasDevicePermission_ResponseParams;
+ break;
+ case kPermissionProvider_HasConfigurationPermission_Name:
+ if (message.isResponse())
+ paramsClass = PermissionProvider_HasConfigurationPermission_ResponseParams;
+ break;
+ case kPermissionProvider_HasInterfacePermission_Name:
+ if (message.isResponse())
+ paramsClass = PermissionProvider_HasInterfacePermission_ResponseParams;
+ break;
+ }
+ if (paramsClass === null)
+ return validator.validationError.NONE;
+ return paramsClass.validate(messageValidator, messageValidator.message.getHeaderNumBytes());
+ }
+
+ var PermissionProvider = {
+ name: 'device::usb::PermissionProvider',
+ proxyClass: PermissionProviderProxy,
+ stubClass: PermissionProviderStub,
+ validateRequest: validatePermissionProviderRequest,
+ validateResponse: validatePermissionProviderResponse,
+ };
+ PermissionProviderStub.prototype.validator = validatePermissionProviderRequest;
+ PermissionProviderProxy.prototype.validator = validatePermissionProviderResponse;
+
+
+ var exports = {};
+ exports.PermissionProvider = PermissionProvider;
+
+
+ return exports;
+});

Powered by Google App Engine
This is Rietveld 408576698