# Class AdvancedSourceLookupParticipant

java.lang.Object
org.eclipse.jdt.launching.sourcelookup.advanced.AdvancedSourceLookupParticipant

All Implemented Interfaces:
  `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`

public class AdvancedSourceLookupParticipant extends Object implements org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant

Since:
  3.10
Provisional:
  This is part of work in progress and can be changed, moved or removed without notice

## Constructor Summary

Constructors
Constructor
Description
`AdvancedSourceLookupParticipant()`
`AdvancedSourceLookupParticipant(org.eclipse.jdt.internal.launching.sourcelookup.advanced.IJDIHelpers jdi)`

## Method Summary

Modifier and Type
Method
Description
`void`
`dispose()`
`protected void`
`disposeContainers()`
`Object[]`
`findSourceElements(Object element)`
`org.eclipse.debug.core.sourcelookup.ISourceContainer`
`getSourceContainer(Object element, boolean refresh, org.eclipse.core.runtime.IProgressMonitor monitor)`
`protected Collection<ISourceContainerResolver>`
`getSourceContainerResolvers()`
`static AdvancedSourceLookupParticipant`
`getSourceLookup(Object element)`
`String`
`getSourceName(Object object)`
`void`
`init(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director)`
`void`
`sourceContainersChanged(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director)`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### AdvancedSourceLookupParticipant

public AdvancedSourceLookupParticipant()

### AdvancedSourceLookupParticipant

public AdvancedSourceLookupParticipant(org.eclipse.jdt.internal.launching.sourcelookup.advanced.IJDIHelpers jdi)

Restriction:
  this constructor is visible for test purposes only

## Method Details

### init

public void init(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director)

Specified by:
  `init` in interface `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`

### findSourceElements

public Object[] findSourceElements(Object element) throws org.eclipse.core.runtime.CoreException

Specified by:
  `findSourceElements` in interface `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`
Throws:
  `org.eclipse.core.runtime.CoreException`

### getSourceContainer

public org.eclipse.debug.core.sourcelookup.ISourceContainer getSourceContainer(Object element, boolean refresh, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException

Throws:
  `org.eclipse.core.runtime.CoreException`

### getSourceContainerResolvers

protected Collection<ISourceContainerResolver> getSourceContainerResolvers()

### getSourceName

public String getSourceName(Object object) throws org.eclipse.core.runtime.CoreException

Specified by:
  `getSourceName` in interface `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`
Throws:
  `org.eclipse.core.runtime.CoreException`

### dispose

public void dispose()

Specified by:
  `dispose` in interface `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`

### sourceContainersChanged

public void sourceContainersChanged(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director)

Specified by:
  `sourceContainersChanged` in interface `org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant`

### disposeContainers

protected void disposeContainers()

### getSourceLookup

public static AdvancedSourceLookupParticipant getSourceLookup(Object element)