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 3 // found in the LICENSE file. 4 5 define('main', [ 6 'mojo/public/js/bindings/connection', 7 'content/test/data/web_ui_test_mojo_bindings.mojom', 8 ], function (connection, bindings) { 9 var retainedConnection; 10 11 function RendererTargetTest(bindings) { 12 this.bindings_ = bindings; 13 } 14 15 // TODO(aa): It is a bummer to need this stub object in JavaScript. We should 16 // have a 'client' object that contains both the sending and receiving bits of 17 // the client side of the interface. Since JS is loosely typed, we do not need 18 // a separate base class to inherit from to receive callbacks. 19 RendererTargetTest.prototype = 20 Object.create(bindings.RendererTargetStub.prototype); 21 22 RendererTargetTest.prototype.ping = function () { 23 this.bindings_.pingResponse(); 24 }; 25 26 return function(handle) { 27 retainedConnection = new connection.Connection( 28 handle, RendererTargetTest, bindings.BrowserTargetProxy); 29 }; 30 }); 31