Eclipse Platform
Release 3.2

org.eclipse.debug.core.sourcelookup.containers
Class ContainerSourceContainer

java.lang.Object
  extended byorg.eclipse.core.runtime.PlatformObject
      extended byorg.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
          extended byorg.eclipse.debug.core.sourcelookup.containers.CompositeSourceContainer
              extended byorg.eclipse.debug.core.sourcelookup.containers.ContainerSourceContainer
All Implemented Interfaces:
IAdaptable, ISourceContainer
Direct Known Subclasses:
FolderSourceContainer, ProjectSourceContainer

public abstract class ContainerSourceContainer
extends CompositeSourceContainer

A source container for a container in the workspace. Source elements are searched for within this container and optionally nested containers.

Names specified in findSourceElements method can be simple or qualified. When a name is qualified, a file will be searched for relative to this container, and optionally nested containers.

This class is not intended to be subclassed or instantiated by clients.

Since:
3.2

Field Summary
 
Fields inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
EMPTY
 
Constructor Summary
ContainerSourceContainer(IContainer container, boolean subfolders)
          Constructs a source container on the given workspace container.
 
Method Summary
protected  ISourceContainer[] createSourceContainers()
          Creates the source containers in this composite container.
 boolean equals(Object obj)
           
 Object[] findSourceElements(String name)
          Returns a collection of source elements in this container corresponding to the given name.
 IContainer getContainer()
          Returns the workspace container this source container is rooted at.
 String getName()
          The name of this source container that can be used for presentation purposes.
 int hashCode()
           
 boolean isComposite()
          Returns whether this container is a composite container.
 
Methods inherited from class org.eclipse.debug.core.sourcelookup.containers.CompositeSourceContainer
dispose, findSourceElements, getSourceContainers
 
Methods inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
abort, getDirector, getSourceContainerType, init, isFindDuplicates
 
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.debug.core.sourcelookup.ISourceContainer
getType
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Constructor Detail

ContainerSourceContainer

public ContainerSourceContainer(IContainer container,
                                boolean subfolders)
Constructs a source container on the given workspace container.

Parameters:
container - the container to search for source in
subfolders - whether nested folders should be searched for source elements
Method Detail

getContainer

public IContainer getContainer()
Returns the workspace container this source container is rooted at.

Returns:
the workspace container this source container is rooted at

findSourceElements

public Object[] findSourceElements(String name)
                            throws CoreException
Description copied from interface: ISourceContainer
Returns 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, via isFindDuplicates(). When false the 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).

Specified by:
findSourceElements in interface ISourceContainer
Overrides:
findSourceElements in class CompositeSourceContainer
Throws:
CoreException

getName

public String getName()
Description copied from interface: ISourceContainer
The name of this source container that can be used for presentation purposes. For example, the name of a project.

Returns:
the name of this source container

equals

public boolean equals(Object obj)

hashCode

public int hashCode()

isComposite

public boolean isComposite()
Description copied from interface: ISourceContainer
Returns 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:
isComposite in interface ISourceContainer
Overrides:
isComposite in class CompositeSourceContainer

createSourceContainers

protected ISourceContainer[] createSourceContainers()
                                             throws CoreException
Description copied from class: CompositeSourceContainer
Creates the source containers in this composite container. Subclasses should override this methods.

Specified by:
createSourceContainers in class CompositeSourceContainer
Throws:
CoreException - if unable to create the containers

Eclipse Platform
Release 3.2

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2006. All rights reserved.