blob: cba4b884bee77f785a7be479059776bc48bfa520 [file] [log] [blame]
// Copyright 2010 The Closure Library Authors. All Rights Reserved.
// Use of this source code is governed by the Apache License, Version 2.0.
// See the COPYING file for details.
/**
* @fileoverview A web worker for integration testing the PortChannel class.
*
* @nocompile
*/
self.CLOSURE_BASE_PATH = '../../';
importScripts('../../bootstrap/webworkers.js');
importScripts('../../base.js');
// The provide is necessary to stop the jscompiler from thinking this is an
// entry point and adding it into the manifest incorrectly.
goog.provide('goog.messaging.testdata.portchannel_worker');
goog.require('goog.messaging.PortChannel');
function registerPing(channel) {
channel.registerService('ping', function(msg) {
channel.send('pong', msg);
}, true);
}
function startListening() {
var channel = new goog.messaging.PortChannel(self);
registerPing(channel);
channel.registerService('addPort', function(port) {
port.start();
registerPing(new goog.messaging.PortChannel(port));
}, true);
}
startListening();