Extension SDK

oracle.jdeveloper.library
Class JPaths

java.lang.Object
  extended byoracle.ide.model.DefaultDisplayable
      extended byoracle.ide.model.DefaultElement
          extended byoracle.ide.model.DataElement
              extended byoracle.jdeveloper.library.JPaths
All Implemented Interfaces:
Copyable, Data, Dirtyable, Displayable, Element, SubDirtyable, Subject
Direct Known Subclasses:
JDK, JLibraryDefinition

public class JPaths
extends DataElement
implements Copyable, SubDirtyable, Subject

Encapsulates the notion of grouping a class path, source path, and doc path.


Field Summary
protected  boolean _isLocked
           
protected  Dirtyable _owner
           
static java.lang.String CLASSPATH_PROPERTY
           
static java.lang.String DOCPATH_PROPERTY
           
static java.lang.String SOURCEPATH_PROPERTY
           
 
Fields inherited from interface oracle.ide.addin.Subject
OBJECT_MODIFIED
 
Constructor Summary
JPaths()
          Default constructor.
JPaths(JPaths jPaths)
          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.
protected  void copyToImpl(JPaths 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.
 boolean equals(java.lang.Object obj)
           
protected  boolean equalsImpl(JPaths other)
           
 URLPath getClassPath()
           
 URLPath getDocPath()
           
 URLPath getSourcePath()
           
 boolean isDirty()
          True if the data in the object has been modified.
 boolean isLocked()
           
 void markDirty(boolean dirty)
          Marks the data with the specified dirty state.
 void notifyObservers(java.lang.Object subject, UpdateMessage change)
          Notifies all observers that the state of the subject has changed.
 void setClassPath(URLPath classPath)
           
 void setDocPath(URLPath docPath)
           
 void setLocked(boolean isLocked)
           
 void setOwner(Dirtyable owner)
          This method should be called to set the document in which a SubDirtyable implementation will be persisted.
 void setSourcePath(URLPath sourcePath)
           
 
Methods inherited from class oracle.ide.model.DefaultElement
getAttributes, getChildren, getData, mayHaveChildren
 
Methods inherited from class oracle.ide.model.DefaultDisplayable
getIcon, getLongLabel, getShortLabel, getToolTipText, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface oracle.ide.model.Displayable
getIcon, getLongLabel, getShortLabel, getToolTipText, toString
 

Field Detail

_owner

protected Dirtyable _owner

_isLocked

protected boolean _isLocked

CLASSPATH_PROPERTY

public static final java.lang.String CLASSPATH_PROPERTY
See Also:
Constant Field Values

SOURCEPATH_PROPERTY

public static final java.lang.String SOURCEPATH_PROPERTY
See Also:
Constant Field Values

DOCPATH_PROPERTY

public static final java.lang.String DOCPATH_PROPERTY
See Also:
Constant Field Values
Constructor Detail

JPaths

public JPaths()
Default constructor. Required for JavaBean status.


JPaths

public JPaths(JPaths jPaths)
Copy constructor.

Method Detail

copyTo

public java.lang.Object copyTo(java.lang.Object object)
Description copied from interface: Copyable
Copies the internal state of this 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.

Specified by:
copyTo in interface Copyable
Parameters:
object - The target object to which the state of this object should be copied. If target is null, then the copyTo method will return a new instance of this class.
Returns:
The object to which the state of this object was copied. If the target was non-null, then the return value is the same as the target object that was passed in; otherwise, the return value is a new instance of this class.

copyToImpl

protected final void copyToImpl(JPaths copy)

equals

public boolean equals(java.lang.Object obj)

equalsImpl

protected boolean equalsImpl(JPaths other)

getClassPath

public URLPath getClassPath()

setClassPath

public void setClassPath(URLPath classPath)

getSourcePath

public URLPath getSourcePath()

setSourcePath

public void setSourcePath(URLPath sourcePath)

getDocPath

public URLPath getDocPath()

setDocPath

public void setDocPath(URLPath docPath)

isLocked

public boolean isLocked()

setLocked

public void setLocked(boolean isLocked)

markDirty

public void markDirty(boolean dirty)
Description copied from interface: Dirtyable
Marks the data with the specified dirty state. This method is called markDirty(...) instead of setDirty(...) so that the JavaBeans Introspector will not mistakenly identify "dirty" as a JavaBean property.

Specified by:
markDirty in interface Dirtyable
Overrides:
markDirty in class DataElement

isDirty

public boolean isDirty()
Description copied from interface: Dirtyable
True if the data in the object has been modified.

Specified by:
isDirty in interface Dirtyable
Overrides:
isDirty in class DataElement

setOwner

public void setOwner(Dirtyable owner)
Description copied from interface: SubDirtyable
This method should be called to set the document in which a SubDirtyable implementation will be persisted.

Specified by:
setOwner in interface SubDirtyable
Parameters:
owner - The Dirtyable object in which this SubDirtyable will be saved.

notifyObservers

public void notifyObservers(java.lang.Object subject,
                            UpdateMessage change)
Description copied from interface: Subject
Notifies all observers that the state of the subject has changed.

Specified by:
notifyObservers in interface Subject
Parameters:
subject - the subject whose state has changed.
change - what changed.

detach

public void detach(Observer observer)
Description copied from interface: Subject
Unregisters an observer that is not interested anymore in being notified when the internal state of the class implementing the Subject interface changes. Implementors should do nothing when the same observer is removed more than once.

Specified by:
detach in interface Subject
Parameters:
observer - the Observer disinterested in change notification messages.

attach

public void attach(Observer observer)
Description copied from interface: Subject
Registers an observer interested in being notified when the internal state of the class implementing the Subject interface changes. Implementors should do nothing when the same observer is added more than once.

Specified by:
attach in interface Subject
Parameters:
observer - the Observer interested in change notification messages.

Extension SDK

 

Copyright ©1997, 2003, Oracle. All rights reserved.