Class ArchiveSourceContainer

All Implemented Interfaces:
IAdaptable, ISourceContainer

public class ArchiveSourceContainer extends AbstractSourceContainer
Archive source container for an archive in the workspace. Returns instances of ZipEntryStorage as source elements.

Clients may instantiate this class.

Since:
3.0
Restriction:
This class is not intended to be subclassed by clients.
  • Field Details

    • TYPE_ID

      public static final String TYPE_ID
      Unique identifier for the archive source container type (value org.eclipse.debug.core.containerType.archive).
  • Constructor Details

    • ArchiveSourceContainer

      public ArchiveSourceContainer(IFile archive, boolean detectRootPath)
      Creates an archive source container on the given file.
      Parameters:
      archive - archive in the workspace
      detectRootPath - whether a root path should be detected. When true, searching is performed relative to a root path within the archive based on fully qualified file names. The root path is automatically determined when the first successful search is performed. For example, when searching for a file named a/b/c.d, and an entry in the archive named r/a/b/c.d exists, the root path is set to r. From that point on, searching is performed relative to r. When false, searching is performed by matching file names as suffixes to the entries in the archive.
  • Method Details

    • 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
    • getFile

      public IFile getFile()
      Returns the associated file in the workspace.
      Returns:
      associated file in the workspace
    • getType

      public ISourceContainerType getType()
      Description copied from interface: ISourceContainer
      Returns this container's type.
      Returns:
      this container's type
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • 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).

      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
    • init

      public void init(ISourceLookupDirector director)
      Description copied from interface: ISourceContainer
      Notification this source container has been added to the given source lookup director.
      Specified by:
      init in interface ISourceContainer
      Overrides:
      init in class AbstractSourceContainer
      Parameters:
      director - the director this container has been added to
    • dispose

      public void dispose()
      Description copied from interface: ISourceContainer
      Disposes this source container. This method is called when the source director associated with this source container is disposed.
      Specified by:
      dispose in interface ISourceContainer
      Overrides:
      dispose in class AbstractSourceContainer
    • isDetectRoot

      public boolean isDetectRoot()
      Returns whether root paths are automatically detected in this archive source container.
      Returns:
      whether root paths are automatically detected in this archive source container
      Since:
      3.0.1.1