Eclipse Platform Release 3.7

## org.eclipse.debug.core.sourcelookup
Class AbstractSourceLookupParticipant

    java.lang.Object
      org.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.
`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 associated 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 occurs 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

    public 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
  Since:
    3.5

### 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.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.