public abstract class ContainerModelAdapter extends ModelAdapter
ModelAdapter
which adapts an Element
which contains elements.ModelAdapter
Modifier | Constructor and Description |
---|---|
protected |
ContainerModelAdapter(ModelFactory factory, ModelType type, ContainerModelAdapter workspace, ContainerModelAdapter project, ContainerModelAdapter directory, ContentDirectory element, java.net.URL url) |
protected |
ContainerModelAdapter(ModelFactory factory, ModelType type, ContainerModelAdapter workspace, Project project) |
protected |
ContainerModelAdapter(ModelFactory factory, ModelType type, Workspace workspace) |
protected |
ContainerModelAdapter(ModelFactory factory, ModelType type, Workspaces applications) |
Modifier and Type | Method and Description |
---|---|
protected void |
addContainedElement(Element element, java.net.URL url)
Gets the models for an element contained by the root construct of this model, and adds them to the models contained by this model.
|
boolean |
addContainedModel(ModelAdapter model)
Adds a model to the set contained by this model.
|
void |
addEmbeddedModel(ModelAdapter embeddedModel, ModelAdapter baseModel)
Adds an embedded model to the set contained by this model.
|
protected abstract void |
collectContainedElements()
Collects the contained
Element s of the root construct. |
java.lang.Object |
getConstruct(Location location)
Gets the innermost construct containing a location in this model.
|
java.util.Iterator |
getContainedConstructs(java.lang.Object construct)
Gets the constructs contained by a construct in this model.
|
java.util.Iterator<Element> |
getContainedUnauditableElements()
Gets the unauditable elements contained by the root construct of this model.
|
Location[] |
getElementLocations(Element element)
Gets the locations of the constructs in this model corresponding to an IDE element.
|
Location |
getLocation(java.lang.Object construct)
Gets the location for a construct in this model, or null if the object is not a construct in this model.
|
java.lang.Object |
getRoot()
Gets the root construct of this model.
|
boolean |
isFile()
Gets whether this model represents a "file".
|
acquireReadLock, acquireReadLock, beginRead, beginRead, beginReadHook, cancelRead, compareSiblings, compareTo, contains, contains, contains, contextDescription, edit, endRead, endRead, endReadHook, enter, equals, exit, getAttribute, getCharacter, getColumnOffset, getConstruct, getContainingAdapter, getDependency, getDirectory, getDirectoryAdapter, getElement, getEndLocation, getFactory, getFileAdapter, getFocusLocation, getFocusLocation, getIdeContext, getInitialLength, getLine, getLineOffset, getLocation, getLocation, getLock, getNavigationPoint, getNode, getPrimaryCollationKey, getProject, getProjectAdapter, getSecondaryCollationKey, getSecondaryCollationString, getShortLabel, getText, getType, getUrl, getURL, getWorkspace, getWorkspaceAdapter, hashCode, icon, icon, isEditable, isModifiable, isModified, isModified, isReadLockHeld, isWriteLockHeld, label, label, release, releaseReadLock, setAttribute, summary, summary, toString, verifyReadTransaction
protected ContainerModelAdapter(ModelFactory factory, ModelType type, Workspaces applications)
protected ContainerModelAdapter(ModelFactory factory, ModelType type, Workspace workspace)
protected ContainerModelAdapter(ModelFactory factory, ModelType type, ContainerModelAdapter workspace, Project project)
protected ContainerModelAdapter(ModelFactory factory, ModelType type, ContainerModelAdapter workspace, ContainerModelAdapter project, ContainerModelAdapter directory, ContentDirectory element, java.net.URL url)
public Location[] getElementLocations(Element element)
ModelAdapter
Implementations need only deal with IDE element types that are returned by the getRootElementTypes
and getContainedElementTypes
methods of the model type for this model.
getElementLocations
in class ModelAdapter
element
- an IDE Element
of a type supported by this model.public java.lang.Object getRoot()
The default ContainerModelAdapter
implementation returns the Element
corresponding to this model.
getRoot
in class ModelAdapter
public boolean isFile()
The default ContainerModelAdapter
implementation returns false.
isFile
in class ModelAdapter
public boolean addContainedModel(ModelAdapter model)
model
- An adapter for a model contained by the root construct of this model.public java.util.Iterator getContainedConstructs(java.lang.Object construct)
Implementations must return an iterator which iterates the constructs in document order.
The default ContainerModelAdapter
implementation requires that the construct be the root construct of this model and returns an iterator over the model adapters contained by this model adapter. On first invocation, it invokes collectContainedElements()
unless the Audit framework has already invoked addContainedModel at least once to configure a subset.
Implementations must return an iterator which iterates the model adapters in their natural order.
getContainedConstructs
in class ModelAdapter
construct
- The root construct of this model.public Location getLocation(java.lang.Object construct)
ModelAdapter
Implementations must extract offset and length from the construct to create a Location
.
getLocation
in class ModelAdapter
construct
- a construct in this model, created by either ModelAdapter.getRoot()
or ModelAdapter.getContainedConstructs(java.lang.Object)
.public java.lang.Object getConstruct(Location location)
ModelAdapter
ModelAdapter
implementation traverses from the root using ModelAdapter.getContainedConstructs(java.lang.Object)
and the Location.contains(oracle.jdeveloper.audit.model.Location)
method.getConstruct
in class ModelAdapter
location
- A location in this model.public java.util.Iterator<Element> getContainedUnauditableElements()
protected abstract void collectContainedElements()
Element
s of the root construct. Implementations must call addContainedElement(oracle.ide.model.Element, java.net.URL)
for each contained element. This method is invoked by the first invocation of getContainedConstructs(java.lang.Object)
or #getContainedUnauditableElements, unless {@link #addContainedModel} has already been invoked.
The Audit framework invokes this method with a read transaction active on this model.
construct
- The root construct of this model.protected void addContainedElement(Element element, java.net.URL url)
This method should only be invoked from subclass collectContainedElements()
methods.
element
- An element contained by the root construct of this model.url
- The URL of the element, null to extract from element.public void addEmbeddedModel(ModelAdapter embeddedModel, ModelAdapter baseModel)
embeddedModel
- An adapter for an embedded model created from a model already contained by this model.baseModel
- The base model for the embedded model, contained by this model.