org.eclipse.xtext.ui.editor.validation
Class AnnotationIssueProcessor

java.lang.Object
  extended by org.eclipse.xtext.ui.editor.validation.AnnotationIssueProcessor
All Implemented Interfaces:
org.eclipse.jface.text.source.IAnnotationModelListener, IValidationIssueProcessor

public class AnnotationIssueProcessor
extends java.lang.Object
implements IValidationIssueProcessor, org.eclipse.jface.text.source.IAnnotationModelListener

Author:
Sven Efftinge - Initial contribution and API, Michael Clay, Heiko Behrens, Sebastian Zarnekow

Constructor Summary
AnnotationIssueProcessor(IXtextDocument xtextDocument, org.eclipse.jface.text.source.IAnnotationModel annotationModel, IssueResolutionProvider issueResolutionProvider)
           
 
Method Summary
protected  void announceAnnotationChanged(org.eclipse.jface.text.source.Annotation annotation)
           
protected  void fireQueuedEvents()
           
protected  java.util.Map<org.eclipse.jface.text.source.Annotation,org.eclipse.jface.text.Position> getAnnotationsToAdd(com.google.common.collect.Multimap<org.eclipse.jface.text.Position,org.eclipse.jface.text.source.Annotation> positionToAnnotations, java.util.List<Issue> issues, org.eclipse.core.runtime.IProgressMonitor monitor)
           
protected  java.util.List<org.eclipse.jface.text.source.Annotation> getAnnotationsToRemove(org.eclipse.core.runtime.IProgressMonitor monitor)
           
protected  int getMarkerSeverity(Severity severity)
           
protected  boolean isRelevantAnnotationType(java.lang.String type)
           
protected  boolean isSet(java.lang.Integer length)
           
 void modelChanged(org.eclipse.jface.text.source.IAnnotationModel model)
          Called if a model change occurred on the given model.
 void processIssues(java.util.List<Issue> issues, org.eclipse.core.runtime.IProgressMonitor monitor)
           
protected  void queueOrFireAnnotationChangedEvent(org.eclipse.ui.texteditor.MarkerAnnotation annotation)
           
protected  void updateAnnotations(org.eclipse.core.runtime.IProgressMonitor monitor, java.util.List<org.eclipse.jface.text.source.Annotation> toBeRemoved, java.util.Map<org.eclipse.jface.text.source.Annotation,org.eclipse.jface.text.Position> annotationToPosition)
           
protected  void updateMarkerAnnotations(org.eclipse.core.runtime.IProgressMonitor monitor)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnnotationIssueProcessor

public AnnotationIssueProcessor(IXtextDocument xtextDocument,
                                org.eclipse.jface.text.source.IAnnotationModel annotationModel,
                                IssueResolutionProvider issueResolutionProvider)
Method Detail

processIssues

public void processIssues(java.util.List<Issue> issues,
                          org.eclipse.core.runtime.IProgressMonitor monitor)
Specified by:
processIssues in interface IValidationIssueProcessor

updateAnnotations

protected void updateAnnotations(org.eclipse.core.runtime.IProgressMonitor monitor,
                                 java.util.List<org.eclipse.jface.text.source.Annotation> toBeRemoved,
                                 java.util.Map<org.eclipse.jface.text.source.Annotation,org.eclipse.jface.text.Position> annotationToPosition)

getAnnotationsToRemove

protected java.util.List<org.eclipse.jface.text.source.Annotation> getAnnotationsToRemove(org.eclipse.core.runtime.IProgressMonitor monitor)

getAnnotationsToAdd

protected java.util.Map<org.eclipse.jface.text.source.Annotation,org.eclipse.jface.text.Position> getAnnotationsToAdd(com.google.common.collect.Multimap<org.eclipse.jface.text.Position,org.eclipse.jface.text.source.Annotation> positionToAnnotations,
                                                                                                                      java.util.List<Issue> issues,
                                                                                                                      org.eclipse.core.runtime.IProgressMonitor monitor)

isSet

protected boolean isSet(java.lang.Integer length)

getMarkerSeverity

protected int getMarkerSeverity(Severity severity)

updateMarkerAnnotations

protected void updateMarkerAnnotations(org.eclipse.core.runtime.IProgressMonitor monitor)

queueOrFireAnnotationChangedEvent

protected void queueOrFireAnnotationChangedEvent(org.eclipse.ui.texteditor.MarkerAnnotation annotation)

fireQueuedEvents

protected void fireQueuedEvents()

announceAnnotationChanged

protected void announceAnnotationChanged(org.eclipse.jface.text.source.Annotation annotation)

isRelevantAnnotationType

protected boolean isRelevantAnnotationType(java.lang.String type)

modelChanged

public void modelChanged(org.eclipse.jface.text.source.IAnnotationModel model)
Description copied from interface: org.eclipse.jface.text.source.IAnnotationModelListener
Called if a model change occurred on the given model.

Replaced by IAnnotationModelListenerExtension.modelChanged(AnnotationModelEvent).

Specified by:
modelChanged in interface org.eclipse.jface.text.source.IAnnotationModelListener
Parameters:
model - the changed annotation model