public class XMLDataContainer extends XMLDataNode implements Folder
XMLDataContainer
is the Node
wrapper
for a Folder
-implementing JavaBean that can be
persisted to XML using the XML marshalling framework in
oracle.ide.marshal.xml
.
XMLDataContainer
wraps objects that can contain
children. In order to interact with XMLDataContainer
,
wrapped objects must implement Folder
.
All methods to the XMLDataContainer
's Element
and Folder
methods are forwarded to the wrapped
Folder
object.
If the wrapped object is not an instance of Folder
,
then an IllegalStateException
will be thrown every time
an operation that requires the children list is called.
Object2Dom
XMLDataNode.DataCastPacket
LOG_READONLY
Constructor and Description |
---|
XMLDataContainer() |
Modifier and Type | Method and Description |
---|---|
boolean |
add(Element element)
Appends a child
Element to the end of the
Folder . |
boolean |
add(Element element,
boolean notify) |
boolean |
canAdd(Element element)
Other classes can call this method to determine whether the given
Element can be added to the Folder . |
boolean |
canRemove(Element element)
Other classes can call this method to determine whether the
specified
Element can be removed from this
Folder . |
boolean |
containsChild(Element child)
|
protected Folder |
getDataFolder()
Retrieves the
Folder object associated with this
XMLDataContainer instance. |
boolean |
mayHaveChildren()
This method is part of the
Element interface to
provide a convenient way of determining whether an object may
have children without having to test the object's type with the
instanceof operator or having to downcast to a
more specific type. |
boolean |
remove(Element element)
Removes the specified child
Element . |
boolean |
remove(Element element,
boolean notify) |
void |
removeAll()
Removes all children from the folder.
|
void |
removeAll(boolean notify) |
int |
size()
Returns the current number of children in the folder.
|
closeImpl, getAttributes, getChildren, getData, getDataCastPacketDirectly, getDefaultClass, getIcon, getToolTipText, getXMLRootElementName, markDirty, newObject2Dom, openImpl, saveImpl, setData, setDataCastPacketDirectly, setNodeInfo, setURL
addNodeListener, addNodeListenerForType, addNodeListenerForTypeHierarchy, attach, beginThreadNodeUsageCycle, callUnderReadLock, callUnderWriteLock, close, createSubject, delete, deleteImpl, detach, endThreadNodeUsage, endThreadNodeUsageCycle, ensureOpen, equalsImpl, getInputStream, getLongLabel, getShortLabel, getSubject, getTimestamp, getTimestampLoadedUnsafe, getTransientProperties, getUnmodifiedTimestamp, getURL, isDirty, isLoaded, isLockHeld, isMigrating, isNew, isOpen, isReadLocked, isReadLockHeld, isReadOnly, isReadOrWriteLocked, isTrackedInNodeCache, isTrackingThreadNodeUsage, isWriteLocked, isWriteLockHeld, lockCount, markDirtyImpl, nodeLock, notifyObservers, open, readLock, readLockCount, readLockInterruptibly, readUnlock, refreshTimestamp, removeNodeListener, removeNodeListenerForType, removeNodeListenerForTypeHierarchy, rename, renameImpl, reportOpenException, revert, revertImpl, runUnderReadLock, runUnderWriteLock, save, setEventLog, setMigrating, setOpen, setReadOnly, setTimestampDirectly, toString, tryRunUnderReadLock, tryRunUnderWriteLock, unsetMigrating, upgradeLock, upgradeUnlock, urlReadOnlyChanged, writeLock, writeLockCount, writeLockInterruptibly, writeUnlock
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getAttributes, getChildren, getData
getIcon, getLongLabel, getShortLabel, getToolTipText, toString
public boolean mayHaveChildren()
Element
Element
interface to
provide a convenient way of determining whether an object may
have children without having to test the object's type with the
instanceof
operator or having to downcast to a
more specific type.
An implementation of Element
that represents a leaf
in a tree structure should return false
from this
method. An implementation of Element
that could
represent a non-leaf in a tree structure should return
true
from this method, even if it does not currently
contain any children.
mayHaveChildren
in interface Element
mayHaveChildren
in class XMLDataNode
true
if this Element
may contain
child Element
s.public boolean canAdd(Element element)
Folder
Element
can be added to the Folder
.public boolean add(Element element)
Folder
Element
to the end of the
Folder
.public boolean canRemove(Element element)
Folder
Element
can be removed from this
Folder
.public boolean remove(Element element)
Folder
Element
. If the child object
appears more than once, only the first instance is removed.public boolean containsChild(Element child)
Folder
containsChild
in interface Folder
public int size()
Folder
public void removeAll()
Folder
public boolean add(Element element, boolean notify)
public boolean remove(Element element, boolean notify)
public void removeAll(boolean notify)
protected final Folder getDataFolder() throws java.lang.IllegalStateException
Folder
object associated with this
XMLDataContainer
instance. If there is no Folder
currently associated with the XMLDataContainer
, however,
then an IllegalStateException
is thrown.java.lang.IllegalStateException
- if the XMLDataContainer
is not capable of holding a Folder
.