|
Extension SDK | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectoracle.ide.model.DefaultDisplayable
oracle.ide.model.DefaultElement
oracle.ide.model.DefaultFolder
oracle.ide.model.DataFolder
oracle.ide.model.ObservableDataFolder
ObservableDataFolder is a complete, default implementation
of the Folder and Subject interfaces. This is a
convenient starting point for the implementation of data classes
which can be integrated with the IDE framework.
Subject,
DataFolder| Field Summary |
| Fields inherited from class oracle.ide.model.DefaultFolder |
_children |
| Fields inherited from interface oracle.ide.addin.Subject |
OBJECT_MODIFIED |
| Constructor Summary | |
ObservableDataFolder()
Default constructor needed for JavaBean status. |
|
ObservableDataFolder(ObservableDataFolder observableDataFolder)
Copy constructor. |
|
| Method Summary | |
void |
attach(Observer observer)
Registers an observer interested in being notified when the internal state of the class implementing the Subject interface
changes. |
java.lang.Object |
copyTo(java.lang.Object object)
Copies the internal state of this object to the
specified copy. |
void |
detach(Observer observer)
Unregisters an observer that is not interested anymore in being notified when the internal state of the class implementing the Subject
interface changes. |
void |
notifyObservers(java.lang.Object observed,
UpdateMessage change)
Notifies all observers that the state of the subject has changed. |
| Methods inherited from class oracle.ide.model.DataFolder |
add, getListOfChildren, isDirty, markDirty, remove, removeAll, setListOfChildren |
| Methods inherited from class oracle.ide.model.DefaultFolder |
canAdd, canRemove, containsChild, copyToImpl, equalsImpl, getChildren, getIcon, mayHaveChildren, size |
| Methods inherited from class oracle.ide.model.DefaultElement |
getAttributes, getData |
| Methods inherited from class oracle.ide.model.DefaultDisplayable |
getLongLabel, getShortLabel, getToolTipText, toString |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface oracle.ide.model.Element |
getAttributes |
| Methods inherited from interface oracle.ide.model.Data |
getData |
| Methods inherited from interface oracle.ide.model.Displayable |
getLongLabel, getShortLabel, getToolTipText, toString |
| Constructor Detail |
public ObservableDataFolder()
public ObservableDataFolder(ObservableDataFolder observableDataFolder)
| Method Detail |
public java.lang.Object copyTo(java.lang.Object object)
Copyablethis object to the
specified copy. If copy is
null, then this method should create a new instance
of this class and proceed to copy the internal state
to the newly created object. Generally, only the persistent
state of the object should be copied, but whether or not it is
appropriate to copy transient properties is at the discretion
of the individual implementor.
Regardless of whether the copy occurs to an existing object or to
a newly created object, the return value is object to which
this object's state was copied.
There is a standard implementation pattern for the
copyTo method that helps avoid problems that arise
when a Copyable object is subclassed. The pattern
is:
public Object copyTo( Object target )
{
final <this_class> copy =
target != null ? (<this_class>) target : new <this_class>();
copyToImpl( copy );
return copy;
}
protected final void copyToImpl( <this_class> copy )
{
super.copyToImpl( copy ); // if necessary
// put code here for copying the properties of <this_class>
}
The parameter passed into the copyToImpl method is
the same type of this class. The responsibility of
copyToImpl is to copy the state of this
class through direct access of the fields. The
copyToImpl method should not use getters and setters
since these may be overridden, causing the state of
this class to be incompletely copied.
copyTo in interface CopyablecopyTo in class DataFolderpublic void attach(Observer observer)
SubjectSubject interface
changes.
Implementors should do nothing when the same observer is added more
than once.
attach in interface Subjectobserver - the Observer interested in change notification
messages.public void detach(Observer observer)
SubjectSubject
interface changes.
Implementors should do nothing when the same observer is removed more
than once.
detach in interface Subjectobserver - the Observer disinterested in change
notification messages.
public void notifyObservers(java.lang.Object observed,
UpdateMessage change)
Subject
notifyObservers in interface Subjectobserved - the subject whose state has changed.change - what changed.
|
Extension SDK | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright ©1997, 2003, Oracle. All rights reserved.