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 ( ) ⇒ boolean
Deprecated: 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 ) ⇒ boolean
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.
boolean
isDisposed
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.