Eclipse Platform
Release 3.1

org.eclipse.debug.core.sourcelookup
Class AbstractSourceLookupParticipant

java.lang.Object
  extended byorg.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant
All Implemented Interfaces:
ISourceLookupParticipant

public abstract class AbstractSourceLookupParticipant
extends Object
implements ISourceLookupParticipant

Common super class for implementations of source lookup participants.

Clients implementing source lookup participants should subclass this class.

Since:
3.0

Field Summary
protected static Object[] EMPTY
           
 
Constructor Summary
AbstractSourceLookupParticipant()
           
 
Method Summary
 void dispose()
          Disposes this source lookup participant.
 Object[] findSourceElements(Object object)
          Returns a collection of source elements corresponding to the given debug artifact (for example, a stack frame or breakpoint).
protected  ISourceContainer getDelegateContainer(ISourceContainer container)
          Returns the source container to search in place of the given source container, or null if the given source container is not to be searched.
protected  ISourceLookupDirector getDirector()
          Returns the source lookup director this participant is registered with or null if none.
protected  ISourceContainer[] getSourceContainers()
          Returns the source containers currently registered with this participant's source lookup director.
 void init(ISourceLookupDirector director)
          Notification this participant has been added to the specified source lookup director.
protected  boolean isFindDuplicates()
          Returns whether this participant's source lookup director is configured to search for duplicate source elements.
 void sourceContainersChanged(ISourceLookupDirector director)
          Notification that the source lookup containers in the given source lookup director have changed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant
getSourceName
 

Field Detail

EMPTY

protected static final Object[] EMPTY
Constructor Detail

AbstractSourceLookupParticipant

public AbstractSourceLookupParticipant()
Method Detail

init

public void init(ISourceLookupDirector director)
Description copied from interface: ISourceLookupParticipant
Notification this participant has been added to the specified source lookup director.

Specified by:
init in interface ISourceLookupParticipant
Parameters:
director - the source lookup director that this participant has been added to

dispose

public void dispose()
Description copied from interface: ISourceLookupParticipant
Disposes this source lookup participant. This method is called when the source lookup director assocaited with this participant is disposed.

Specified by:
dispose in interface ISourceLookupParticipant

findSourceElements

public Object[] findSourceElements(Object object)
                            throws CoreException
Description copied from interface: ISourceLookupParticipant
Returns a collection of source elements corresponding to the given debug artifact (for example, a stack frame or breakpoint). Returns an empty collection if no source elements are found. This participant'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 the given debug artifact is not recognized by this participant, an empty collection is returned. Otherwise, this participant generates a source name from the given artifact and performs a search for associated source elements in its source containers.

Specified by:
findSourceElements in interface ISourceLookupParticipant
Parameters:
object - the debug artifact for which source needs to be found (e.g., stack frame)
Returns:
a collection of source elements corresponding to the given debug artifact, possibly empty
Throws:
CoreException - if an exception occurrs while searching for source

getDelegateContainer

protected ISourceContainer getDelegateContainer(ISourceContainer container)
Returns the source container to search in place of the given source container, or null if the given source container is not to be searched. The default implementation does not translate source containers. Subclasses should override if required.

Parameters:
container - the source container about to be searched (proxy)
Returns:
the source container to be searched (delegate), or null if the source container should not be searched

getDirector

protected ISourceLookupDirector getDirector()
Returns the source lookup director this participant is registered with or null if none.

Returns:
the source lookup director this participant is registered with or null if none

isFindDuplicates

protected boolean isFindDuplicates()
Returns whether this participant's source lookup director is configured to search for duplicate source elements.

Returns:
whether this participant's source lookup director is configured to search for duplicate source elements

getSourceContainers

protected ISourceContainer[] getSourceContainers()
Returns the source containers currently registered with this participant's source lookup director.

Returns:
the source containers currently registered with this participant's source lookup director

sourceContainersChanged

public void sourceContainersChanged(ISourceLookupDirector director)
Description copied from interface: ISourceLookupParticipant
Notification that the source lookup containers in the given source lookup director have changed.

Specified by:
sourceContainersChanged in interface ISourceLookupParticipant
Parameters:
director - source lookup director that is directing this participant

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

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