Example usage for org.eclipse.jdt.core.compiler ReconcileContext ReconcileContext

List of usage examples for org.eclipse.jdt.core.compiler ReconcileContext ReconcileContext

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.compiler ReconcileContext ReconcileContext.

Prototype

public ReconcileContext(ReconcileWorkingCopyOperation operation, CompilationUnit workingCopy) 

Source Link

Document

Creates a reconcile context for the given reconcile operation.

Usage

From source file:org.eclipse.ajdt.core.reconcile.AJReconcileWorkingCopyOperation.java

License:Open Source License

private void notifyParticipants(final CompilationUnit workingCopy) {
    IJavaProject javaProject = getWorkingCopy().getJavaProject();
    CompilationParticipant[] participants = JavaModelManager.getJavaModelManager().compilationParticipants
            .getCompilationParticipants(javaProject);
    if (participants == null)
        return;//from  w w w.  java2 s  . co m

    final ReconcileContext context = new ReconcileContext(this, workingCopy); // AspectJ change
    for (int i = 0, length = participants.length; i < length; i++) {
        final CompilationParticipant participant = participants[i];
        SafeRunner.run(new ISafeRunnable() {
            public void handleException(Throwable exception) {
                if (exception instanceof Error) {
                    throw (Error) exception; // errors are not supposed to be caught
                } else if (exception instanceof OperationCanceledException)
                    throw (OperationCanceledException) exception;
                else if (exception instanceof UnsupportedOperationException) {
                    // might want to disable participant as it tried to modify the buffer of the working copy being reconciled
                    Util.log(exception,
                            "Reconcile participant attempted to modify the buffer of the working copy being reconciled"); //$NON-NLS-1$
                } else
                    Util.log(exception, "Exception occurred in reconcile participant"); //$NON-NLS-1$
            }

            public void run() throws Exception {
                participant.reconcile(context);
            }
        });
    }
}