public void disconnect() { fMatchJob.cancel(); synchronized (fPatterns) { for (CompiledPatternMatchListener listener : fPatterns) { listener.dispose(); } fPatterns.clear(); } }
} else if (fScheduleFinal) { fFinalMatch = true; schedule();
} else if (fScheduleFinal) { fFinalMatch = true; schedule();
fPatterns.add(notifier); matchListener.connect(fConsole); fMatchJob.schedule();
/** * Adds the given pattern match listener to this console. The listener will * be connected and receive match notifications. * * @param matchListener * the pattern match listener to add */ public void addPatternMatchListener(IPatternMatchListener matchListener) { synchronized (fPatterns) { for (CompiledPatternMatchListener listener : fPatterns) { if (listener.listener == matchListener) { return; } } if (matchListener == null || matchListener.getPattern() == null) { throw new IllegalArgumentException("Pattern cannot be null"); //$NON-NLS-1$ } Pattern pattern = Pattern.compile(matchListener.getPattern(), matchListener.getCompilerFlags()); String qualifier = matchListener.getLineQualifier(); Pattern qPattern = null; if (qualifier != null) { qPattern = Pattern.compile(qualifier, matchListener.getCompilerFlags()); } CompiledPatternMatchListener notifier = new CompiledPatternMatchListener(pattern, qPattern, matchListener); fPatterns.add(notifier); matchListener.connect(fConsole); fMatchJob.schedule(); } }
@Override public void documentChanged(DocumentEvent event) { if (event.fLength > 0) { synchronized (fPatterns) { if (event.fDocument.getLength() == 0) { // document has been cleared, reset match listeners for (CompiledPatternMatchListener notifier : fPatterns) { notifier.end = 0; } } else { if (event.fOffset == 0) { //document was trimmed for (CompiledPatternMatchListener notifier : fPatterns) { notifier.end = notifier.end > event.fLength ? notifier.end - event.fLength : 0; } } } } } fMatchJob.schedule(); }
public void documentChanged(DocumentEvent event) { if (event.fLength > 0) { synchronized (fPatterns) { if (event.fDocument.getLength() == 0) { // document has been cleared, reset match listeners Iterator iter = fPatterns.iterator(); while (iter.hasNext()) { CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iter.next(); notifier.end = 0; } } else { if (event.fOffset == 0) { //document was trimmed Iterator iter = fPatterns.iterator(); while (iter.hasNext()) { CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iter.next(); notifier.end = notifier.end > event.fLength ? notifier.end-event.fLength : 0; } } } } } fMatchJob.schedule(); }
MatchJob() { super("Match Job"); //$NON-NLS-1$ setSystem(true); }
public void forceFinalMatching() { fScheduleFinal = true; fMatchJob.schedule(); }
public void forceFinalMatching() { fScheduleFinal = true; fMatchJob.schedule(); }
MatchJob() { super("Match Job"); //$NON-NLS-1$ setSystem(true); }
public void disconnect() { fMatchJob.cancel(); synchronized (fPatterns) { Iterator iterator = fPatterns.iterator(); while (iterator.hasNext()) { CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iterator.next(); notifier.dispose(); } fPatterns.clear(); } }