Class goog.Disposable

code »
All implemented interfaces:
goog.disposable.IDisposable

Class that provides the basic implementation for disposable objects. If your class holds one or more references to COM objects, DOM nodes, or other disposable objects, it should extend this class or implement the disposable interface (defined in goog.disposable.IDisposable).

Constructor

goog.Disposable ( )

Enumerations

Show:

Instance Methods

code »<T> addOnDisposeCallback ( callback, opt_scope )

Invokes a callback function when this object is disposed. Callbacks are invoked in the order in which they were added.

Parameters
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
Nothing.

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');
   };
 
Deprecated: Use #isDisposed instead.
Returns
Whether the object has been disposed of.
Returns
Whether the object has been disposed of.

Associates a disposable object with this object so that they will be disposed together.

Parameters
disposable: goog.disposable.IDisposable
that will be disposed when this object is disposed.

Instance Properties

If monitoring the goog.Disposable instances is enabled, stores the creation stack trace of the Disposable instance.

Whether the object has been disposed of.

Callbacks to invoke when this object is disposed.

Static Functions

Clears the registry of undisposed objects but doesn't dispose of them.

Returns
All goog.Disposable objects that haven't been disposed of.

Returns True if we can verify the object is disposed. Calls isDisposed on the argument if it supports it. If obj is not an object with an isDisposed() method, return false.

Parameters
obj: *
The object to investigate.
Returns
True if we can verify the object is disposed.

Static Properties

Maps the unique ID of every undisposed goog.Disposable object to the object itself.

Compiler Constants