messaging.MultiChannel Extends goog.Disposable
Creates a new MultiChannel wrapping a single MessageChannel. The underlying channel shouldn't have any other listeners registered, but it should be connected. Note that the other side of the channel should also be connected to a MultiChannel with the same number of virtual channels.

Inheritance

Constructor

goog.messaging.MultiChannel(underlyingChannel)

Parameters

underlyingChannel : goog.messaging.MessageChannel
The underlying channel to use as transport for the virtual channels.

Instance Methods

Public Protected Private
createVirtualChannel(name) !goog.messaging.MultiChannel.VirtualChannel
Creates a new virtual channel that will communicate across the underlying channel.
Arguments:
name : string
The name of the virtual channel. Must be unique for this MultiChannel. Cannot contain colons.
Returns: !goog.messaging.MultiChannel.VirtualChannel  The new virtual channel.
code »
disposeInternal()
No description.
code »
handleDefault_(serviceNamepayload)
Handles the default service for the underlying channel. This dispatches any unrecognized services to the appropriate virtual channel.
Arguments:
serviceName : string
The name of the service being called.
payload : string | !Object
The message payload.
code »
addOnDisposeCallback(callbackopt_scope)
Invokes a callback function when this object is disposed. Callbacks are invoked in the order in which they were added.
Arguments:
callback : function(this:T):?
The callback function.
opt_scope : T=
An optional scope to call the callback in.
code »
dispose() void
Disposes of the object. If the object hasn't already been disposed of, calls #disposeInternal. Classes that extend goog.Disposable should override #disposeInternal in order to delete references to COM objects, DOM nodes, and other disposable objects. Reentrant.
Returns: void  Nothing.
code »
disposeInternal()
Deletes or nulls out any references to COM objects, DOM nodes, or other disposable objects. Classes that extend goog.Disposable should override this method. Not reentrant. To avoid calling it twice, it must only be called from the subclass' disposeInternal method. Everywhere else the public dispose method must be used. For example:
  mypackage.MyClass = function() {
    mypackage.MyClass.base(this, 'constructor');
    // Constructor logic specific to MyClass.
    ...
  };
  goog.inherits(mypackage.MyClass, goog.Disposable);

  mypackage.MyClass.prototype.disposeInternal = function() {
    // Dispose logic specific to MyClass.
    ...
    // Call superclass's disposeInternal at the end of the subclass's, like
    // in C++, to avoid hard-to-catch issues.
    mypackage.MyClass.base(this, 'disposeInternal');
  };
code »
getDisposed() boolean
Use #isDisposed instead. No description.
Returns: boolean  Whether the object has been disposed of.
code »
isDisposed() boolean
No description.
Returns: boolean  Whether the object has been disposed of.
code »
registerDisposable(disposable)
Associates a disposable object with this object so that they will be disposed together.
Arguments:
disposable : goog.disposable.IDisposable
that will be disposed when this object is disposed.
code »

Instance Properties

constructor :
No description.
Code »
logger_ : goog.debug.Logger
Logger object for goog.messaging.MultiChannel.
Code »
underlyingChannel_ : goog.messaging.MessageChannel
The underlying channel across which all requests are sent.
Code »
virtualChannels_ :
All the virtual channels that are registered for this MultiChannel. These are null if they've been disposed.
Code »
creationStack :
If monitoring the goog.Disposable instances is enabled, stores the creation stack trace of the Disposable instance.
Code »
disposed_ :
Whether the object has been disposed of.
Code »
onDisposeCallbacks_ :
Callbacks to invoke when this object is disposed.
Code »

Static Properties

goog.messaging.MultiChannel.superClass_ :
No description.
Code »

Package messaging

Package Reference