Extension SDK 10.1.2

oracle.ide.model
Class DefaultContainer

java.lang.Object
  extended byoracle.ide.model.DefaultDisplayable
      extended byoracle.ide.model.DefaultElement
          extended byoracle.ide.model.DefaultDocument
              extended byoracle.ide.model.DefaultNode
                  extended byoracle.ide.model.DefaultContainer
All Implemented Interfaces:
Category, Container, Data, Dirtyable, Displayable, Document, Element, Folder, LazyLoadable, Locatable, Node, Subject

public abstract class DefaultContainer
extends DefaultNode
implements Container

The DefaultContainer class is a default implementation of the Container interface.

No copy constructor is implemented because of the problems with Node caching that would come up.

See Also:
DefaultNode, Container

Field Summary
protected  java.util.ArrayList _children
          The "final" modifier makes it possible to synchronize on the _children object, since its value can never change.
 
Fields inherited from interface oracle.ide.addin.Subject
OBJECT_MODIFIED
 
Fields inherited from interface oracle.ide.model.Category
UNDEFINED
 
Constructor Summary
DefaultContainer()
           
DefaultContainer(java.net.URL url)
           
 
Method Summary
 boolean add(Element element)
          Part of the Folder interface.
 boolean add(Element element, boolean notify)
          This is a variant of the Folder.add(Element) method that accepts an additional flag that indicates whether or not notifications of the change should be sent to registered observers.
 boolean canAdd(Element element)
          Part of the Folder interface.
 boolean canRemove(Element element)
          Part of the Folder interface.
 boolean containsChild(Element child)
          Returns true if the folder contains the specified child Element; returns false otherwise.
 java.util.Iterator getChildren()
          Part of the Element interface.
 boolean mayHaveChildren()
          Part of the Element interface.
 boolean remove(Element element)
          Part of the Folder interface.
 boolean remove(Element element, boolean notify)
          This is a variant of the Folder.remove(Element) method that accepts an additional flag that indiciates whether or not notifications of the change should be sent to registered observers.
 void removeAll()
          Removes all children from the folder.
 void removeAll(boolean notify)
          Removes all elements in the Container.
 int size()
          Returns the current number of children in the folder.
 
Methods inherited from class oracle.ide.model.DefaultNode
equalsImpl, getCategory, setURL
 
Methods inherited from class oracle.ide.model.DefaultDocument
attach, close, copyToImpl, createSubject, detach, ensureOpen, equalsImpl, getInputStream, getLongLabel, getShortLabel, getSubject, getTimestamp, getTimestampDirectly, getToolTipText, getURL, isDirty, isNew, isOpen, isReadOnly, markDirty, notifyObservers, open, refreshTimestamp, save, setOpen, setTimestampDirectly, setURLDirectly
 
Methods inherited from class oracle.ide.model.DefaultElement
getAttributes, getData
 
Methods inherited from class oracle.ide.model.DefaultDisplayable
getIcon, 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.Document
close, getInputStream, getTimestamp, isNew, isReadOnly, open, save
 
Methods inherited from interface oracle.ide.model.Locatable
getURL, setURL
 
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
getIcon, getLongLabel, getShortLabel, getToolTipText, toString
 
Methods inherited from interface oracle.ide.addin.Subject
attach, detach, notifyObservers
 
Methods inherited from interface oracle.ide.model.Dirtyable
isDirty, markDirty
 
Methods inherited from interface oracle.ide.model.LazyLoadable
isOpen
 
Methods inherited from interface oracle.ide.model.Category
getCategory
 

Field Detail

_children

protected final java.util.ArrayList _children
The "final" modifier makes it possible to synchronize on the _children object, since its value can never change.

Constructor Detail

DefaultContainer

public DefaultContainer()

DefaultContainer

public DefaultContainer(java.net.URL url)
Method Detail

mayHaveChildren

public boolean mayHaveChildren()
Part of the Element interface. This implementation always returns true.

Specified by:
mayHaveChildren in interface Element
Overrides:
mayHaveChildren in class DefaultElement
See Also:
Element.mayHaveChildren()

getChildren

public java.util.Iterator getChildren()
Part of the Element interface. This implementation returns an Iterator over the current list of children.

Specified by:
getChildren in interface Element
Overrides:
getChildren in class DefaultElement
See Also:
Element.getChildren()

canAdd

public boolean canAdd(Element element)
Part of the Folder interface. The default implementation returns true if and only if the specified Element is not null.

Specified by:
canAdd in interface Folder
Parameters:
element - the Element that is about to be added to this Folder.
Returns:
true if and only if the specified Element is not null.
See Also:
Folder.canAdd(Element)

add

public boolean add(Element element)
Part of the Folder interface. The specified Element is added to the end of the child list. However, if the Element is null, this method does nothing.

No notification is fired by this method.

Specified by:
add in interface Folder
See Also:
Folder.add(oracle.ide.model.Element)

canRemove

public boolean canRemove(Element element)
Part of the Folder interface. The default implementation returns true if and only if the specified Element is not null.

Specified by:
canRemove in interface Folder
Parameters:
element - the Element that is about to be removed from this Folder.
Returns:
true if and only if the specified Element is not null.
See Also:
Folder.canRemove(Element)

remove

public boolean remove(Element element)
Part of the Folder interface. The specified Element is removed from the child list. However, if the Element is null, this method does nothing. If the Element occurs more than once in the child list, then only the first instance is removed.

No notification is fired by this method.

Specified by:
remove in interface Folder
Parameters:
element - The child object to remove.
See Also:
Folder.remove(Element)

containsChild

public boolean containsChild(Element child)
Description copied from interface: Folder
Returns true if the folder contains the specified child Element; returns false otherwise.

Specified by:
containsChild in interface Folder

size

public int size()
Description copied from interface: Folder
Returns the current number of children in the folder.

Specified by:
size in interface Folder

removeAll

public void removeAll()
Description copied from interface: Folder
Removes all children from the folder.

Specified by:
removeAll in interface Folder

add

public boolean add(Element element,
                   boolean notify)
Description copied from interface: Container
This is a variant of the Folder.add(Element) method that accepts an additional flag that indicates whether or not notifications of the change should be sent to registered observers.

Specified by:
add in interface Container
Parameters:
element - The Element to be added to this Container.
notify - If true, any observers are notified of the change. If false, no notification is sent.

remove

public boolean remove(Element element,
                      boolean notify)
Description copied from interface: Container
This is a variant of the Folder.remove(Element) method that accepts an additional flag that indiciates whether or not notifications of the change should be sent to registered observers.

Specified by:
remove in interface Container
Parameters:
element - The Element to be removed from this Container.
notify - If true, any observers are notified of the change. If false, no notification is sent.

removeAll

public void removeAll(boolean notify)
Description copied from interface: Container
Removes all elements in the Container. The notify flag indicates whether observers should be notified of the change.

Specified by:
removeAll in interface Container
Parameters:
notify - If true, any observers are notified of the change. If false, no notification is sent.

Extension SDK

 

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