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
Enumerations
|
Instance Methods
Invokes a callback function when this object is disposed. Callbacks are
invoked in the order in which they were added.
| Parameters |
|---|
|
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.
#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 |
|---|
|
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');
};
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:
code »getDisposed ( ) ⇒ booleanDeprecated: Use #isDisposed instead.
boolean#isDisposed instead.| Returns |
|---|
|
code »isDisposed ( ) ⇒ boolean
boolean| Returns |
|---|
|
code »registerDisposable ( disposable )Associates a disposable object with this object so that they will be disposed
together.
| Parameters |
|---|
|
Instance Properties
If monitoring the goog.Disposable instances is enabled, stores the creation
stack trace of the Disposable instance.
Callbacks to invoke when this object is disposed.
Static Functions
Clears the registry of undisposed objects but doesn't dispose of them.
| Returns |
|---|
goog.Disposable objects that
haven't been disposed of. |
code »goog.Disposable.isDisposed ( obj ) ⇒ booleanReturns 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.
booleanisDisposed on the argument if it supports it. If obj
is not an object with an isDisposed() method, return false.| Parameters |
|---|
|
| Returns |
|
Static Properties
Maps the unique ID of every undisposed goog.Disposable object to
the object itself.
goog.Disposable object to
the object itself.