org.eclipse.wst.jsdt.ui.text.java

## Interface IJavaCompletionProposalComputer

    public interface IJavaCompletionProposalComputer

Computes completions and context information displayed by the JavaScript editor content assistant. Contributions to the `org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer` extension point must implement this interface. Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

### Method Summary

All Methods Instance Methods Abstract Methods
`java.util.List<ICompletionProposal>` `computeCompletionProposals(ContentAssistInvocationContext context, IProgressMonitor monitor)` Returns a list of completion proposals valid at the given invocation context.
`java.util.List<IContextInformation>` `computeContextInformation(ContentAssistInvocationContext context, IProgressMonitor monitor)` Returns context information objects valid at the given invocation context.
`java.lang.String` `getErrorMessage()` Returns the reason why this computer was unable to produce any completion proposals or context information.
`void` `sessionEnded()` Informs the computer that a content assist session has ended.
`void` `sessionStarted()` Informs the computer that a content assist session has started.

### Method Detail

#### sessionStarted

    void sessionStarted()

Informs the computer that a content assist session has started. This call will always be followed by a `sessionEnded()` call, but not necessarily by calls to computeCompletionProposals or computeContextInformation.

#### computeCompletionProposals

    java.util.List<ICompletionProposal> computeCompletionProposals(ContentAssistInvocationContext context,
                                                                   IProgressMonitor monitor)

Returns a list of completion proposals valid at the given invocation context.

Parameters:
  `context` - the context of the content assist invocation
  `monitor` - a progress monitor to report progress. The monitor is private to this invocation, i.e. there is no need for the receiver to spawn a sub monitor.
Returns:
  a list of completion proposals (element type: `org.eclipse.jface.text.contentassist.ICompletionProposal`)

#### computeContextInformation

    java.util.List<IContextInformation> computeContextInformation(ContentAssistInvocationContext context,
                                                                  IProgressMonitor monitor)

Returns context information objects valid at the given invocation context.

Parameters:
  `context` - the context of the content assist invocation
  `monitor` - a progress monitor to report progress. The monitor is private to this invocation, i.e. there is no need for the receiver to spawn a sub monitor.
Returns:
  a list of context information objects (element type: `org.eclipse.jface.text.contentassist.IContextInformation`)

#### getErrorMessage

    java.lang.String getErrorMessage()

Returns the reason why this computer was unable to produce any completion proposals or context information.

Returns:
  an error message or `null` if no error occurred

#### sessionEnded

    void sessionEnded()

Informs the computer that a content assist session has ended. This call will always be after any calls to computeCompletionProposals and computeContextInformation.