Class CompositeSourceContainer
- All Implemented Interfaces:
IAdaptable,ISourceContainer
- Direct Known Subclasses:
ContainerSourceContainer,DefaultSourceContainer,DirectorySourceContainer,WorkingSetSourceContainer,WorkspaceSourceContainer
Clients implementing composite source containers should subclass this class.
- Since:
- 3.0
-
Field Summary
Fields inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract ISourceContainer[]Creates the source containers in this composite container.voiddispose()Disposes this source container.Object[]findSourceElements(String name) Returns a collection of source elements in this container corresponding to the given name.protected Object[]findSourceElements(String name, ISourceContainer[] containers) Returns a collection of source elements in the given containers corresponding to the given name.Returns the source containers this container is composed of.booleanReturns whether this container is a composite container.Methods inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
abort, getDirector, getSourceContainerType, init, isFindDuplicates, warnMethods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapterMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapterMethods inherited from interface org.eclipse.debug.core.sourcelookup.ISourceContainer
getName, getType
-
Constructor Details
-
CompositeSourceContainer
public CompositeSourceContainer()
-
-
Method Details
-
isComposite
public boolean isComposite()Description copied from interface:ISourceContainerReturns whether this container is a composite container. A composite container is composed of other source containers. For example, a workspace source container may be composed of project source containers.- Specified by:
isCompositein interfaceISourceContainer- Overrides:
isCompositein classAbstractSourceContainer- Returns:
- whether this container is a composite container
-
findSourceElements
Description copied from interface:ISourceContainerReturns a collection of source elements in this container corresponding to the given name. Returns an empty collection if no source elements are found. This source container's source lookup director specifies if duplicate source elements should be searched for, viaisFindDuplicates(). Whenfalsethe returned collection should contain at most one source element. If this is a composite container, the containers contained by this container are also searched.The format of the given name is implementation specific but generally conforms to the format of a file name. If a source container does not recognize the name format provided, an empty collection should be returned. A source container may or may not require names to be fully qualified (i.e. be qualified with directory names).
- Parameters:
name- the name of the source element to search for- Returns:
- a collection of source elements corresponding to the given name
- Throws:
CoreException- if an exception occurs while searching for source elements
-
findSourceElements
protected Object[] findSourceElements(String name, ISourceContainer[] containers) throws CoreException Returns a collection of source elements in the given containers corresponding to the given name. Returns an empty collection if no source elements are found. This source container's source lookup director specifies if duplicate source elements should be searched for, viaisFindDuplicates(). Whenfalsethe returned collection should contain at most one source element. If this is a composite container, the containers contained by this container are also searched.The format of the given name is implementation specific but generally conforms to the format of a file name. If a source container does not recognize the name format provided, an empty collection should be returned. A source container may or may not require names to be fully qualified (i.e. be qualified with directory names).
- Parameters:
name- the name of the source element to search forcontainers- the containers to search- Returns:
- a collection of source elements corresponding to the given name
- Throws:
CoreException- if an exception occurs while searching for source elements
-
createSourceContainers
Creates the source containers in this composite container. Subclasses should override this methods.- Returns:
- the array of
ISourceContainers - Throws:
CoreException- if unable to create the containers
-
getSourceContainers
Description copied from interface:ISourceContainerReturns the source containers this container is composed of. An empty collection is returned if this container is not a composite container. For example, a workspace source container may be composed of project source containers.- Specified by:
getSourceContainersin interfaceISourceContainer- Overrides:
getSourceContainersin classAbstractSourceContainer- Returns:
- the source containers this container is composed of, possibly an empty collection
- Throws:
CoreException- if unable to retrieve source containers
-
dispose
public void dispose()Description copied from interface:ISourceContainerDisposes this source container. This method is called when the source director associated with this source container is disposed.- Specified by:
disposein interfaceISourceContainer- Overrides:
disposein classAbstractSourceContainer
-