messaging.PortCaller Extends goog.Disposable
The leaf node of a network.

Inheritance

Constructor

goog.messaging.PortCaller(operatorPort)

Parameters

operatorPort : !goog.messaging.MessageChannel
The channel for communicating with the operator. The other side of this channel should be passed to goog.messaging.PortOperator#addPort. Must be either a goog.messaging.PortChannel or a decorator wrapping a PortChannel; in particular, it must be able to send and receive MessagePorts.

Instance Methods

Public Protected Private
connectionGranted_(message)
Registers a connection to another context in the network. This is called when the operator sends us one end of a MessageChannel, either because this caller requested a connection with another context, or because that context requested a connection with this caller. It's possible that the remote context and this one request each other roughly concurrently. The operator doesn't keep track of which contexts have been connected, so it will create two separate MessageChannels in this case. However, the first channel created will reach both contexts first, so we simply ignore all connections with a given context after the first.
Arguments:
message : !Object | string
The name of the context being connected and the port connecting the context.
code »
dial()
No description.
code »
disposeInternal()
No description.
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

connections_ :
The collection of channels for communicating with other contexts in the network. Each value can contain a goog.aync.Deferred and/or a goog.messaging.MessageChannel. If the value contains a Deferred, then the channel is a goog.messaging.DeferredChannel wrapping that Deferred. The Deferred will be resolved with a goog.messaging.PortChannel once we receive the appropriate port from the operator. This is the situation when this caller requests a connection to another context; the DeferredChannel is used to queue up messages until we receive the port from the operator. If the value does not contain a Deferred, then the channel is simply a goog.messaging.PortChannel communicating with the given context. This is the situation when this context received a port for the other context before it was requested. If a value exists for a given key, it must contain a channel, but it doesn't necessarily contain a Deferred.
Code »
constructor :
No description.
Code »
The channel to the goog.messaging.PortOperator for this network.
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.PortCaller.superClass_ :
No description.
Code »

Package messaging

Package Reference