Eclipse Platform
Release 3.0

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

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

public class ExternalArchiveSourceContainer
extends AbstractSourceContainer

An archive in the local file system. Returns instances of ZipEntryStorage as source elemetns.

Clients may instantiate this class. This class is not intended to be subclassed.

Since:
3.0

Field Summary
static String TYPE_ID
          Unique identifier for the external archive source container type (value org.eclipse.debug.core.containerType.externalArchive).
 
Fields inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
EMPTY
 
Constructor Summary
ExternalArchiveSourceContainer(String archivePath, boolean detectRootPaths)
          Creates an archive source container on the archive at the specified location in the local file system.
 
Method Summary
 void dispose()
          Disposes this source container.
 boolean equals(Object obj)
           
 Object[] findSourceElements(String name)
          Returns a collection of source elements in this container corresponding to the given name.
 String getName()
          The name of this source container that can be used for presentation purposes.
 ISourceContainerType getType()
          Returns this container's type.
 int hashCode()
           
 boolean isDetectRoot()
          Returns whether root paths are automatically detected in this archive source container.
 
Methods inherited from class org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainer
abort, getDirector, getSourceContainers, getSourceContainerType, init, isComposite, 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.core.runtime.IAdaptable
getAdapter
 

Field Detail

TYPE_ID

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

Constructor Detail

ExternalArchiveSourceContainer

public ExternalArchiveSourceContainer(String archivePath,
                                      boolean detectRootPaths)
Creates an archive source container on the archive at the specified location in the local file system.

Parameters:
archivePath - path to the archive in the local file system
detectRootPaths - whether root container paths should be detected. When true, searching is performed relative to a root path within the archive based on fully qualified file names. A root path is automatically determined for each file type 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 for file type d. From that point on, searching is performed relative to r for files of type d. When searching for an unqualified file name, root containers are not considered. When false, searching is performed by matching file names as suffixes to the entries in the archive.
Method Detail

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 occurrs while searching for source elements

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

getType

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

Returns:
this container's type

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

equals

public boolean equals(Object obj)

hashCode

public int hashCode()

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

Eclipse Platform
Release 3.0

Guidelines for using Eclipse APIs.

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