| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/bindings/connection", [ | 5 define("mojo/public/js/bindings/connection", [ |
| 6 "mojo/public/js/bindings/connector", | 6 "mojo/public/js/bindings/connector", |
| 7 "mojo/public/js/bindings/router", | 7 "mojo/public/js/bindings/router", |
| 8 ], function(connector, router) { | 8 ], function(connector, router) { |
| 9 | 9 |
| 10 function Connection( | 10 function Connection( |
| 11 handle, localFactory, remoteFactory, routerFactory, connectorFactory) { | 11 handle, localFactory, remoteFactory, routerFactory, connectorFactory) { |
| 12 if (routerFactory === undefined) | 12 if (routerFactory === undefined) |
| 13 routerFactory = router.Router; | 13 routerFactory = router.Router; |
| 14 this.router_ = new routerFactory(handle, connectorFactory); | 14 this.router_ = new routerFactory(handle, connectorFactory); |
| 15 this.remote = new remoteFactory(this.router_); | 15 this.remote = remoteFactory && new remoteFactory(this.router_); |
| 16 this.local = localFactory && new localFactory(this.remote); | 16 this.local = localFactory && new localFactory(this.remote); |
| 17 this.router_.setIncomingReceiver(this.local); | 17 this.router_.setIncomingReceiver(this.local); |
| 18 | 18 |
| 19 // Validate incoming messages: remote responses and local requests. | 19 // Validate incoming messages: remote responses and local requests. |
| 20 var validateRequest = localFactory && localFactory.prototype.validator; | 20 var validateRequest = localFactory && localFactory.prototype.validator; |
| 21 var validateResponse = remoteFactory.prototype.validator; | 21 var validateResponse = remoteFactory.prototype.validator; |
| 22 var payloadValidators = []; | 22 var payloadValidators = []; |
| 23 if (validateRequest) | 23 if (validateRequest) |
| 24 payloadValidators.push(validateRequest); | 24 payloadValidators.push(validateRequest); |
| 25 if (validateResponse) | 25 if (validateResponse) |
| (...skipping 23 matching lines...) Expand all Loading... |
| 49 connector.TestConnector); | 49 connector.TestConnector); |
| 50 } | 50 } |
| 51 | 51 |
| 52 TestConnection.prototype = Object.create(Connection.prototype); | 52 TestConnection.prototype = Object.create(Connection.prototype); |
| 53 | 53 |
| 54 var exports = {}; | 54 var exports = {}; |
| 55 exports.Connection = Connection; | 55 exports.Connection = Connection; |
| 56 exports.TestConnection = TestConnection; | 56 exports.TestConnection = TestConnection; |
| 57 return exports; | 57 return exports; |
| 58 }); | 58 }); |
| OLD | NEW |