summaryrefslogtreecommitdiff
path: root/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java')
-rw-r--r--platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java b/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java
new file mode 100644
index 000000000000..4caff77bdc06
--- /dev/null
+++ b/platform/structuralsearch/source/com/intellij/structuralsearch/plugin/util/CollectingMatchResultSink.java
@@ -0,0 +1,40 @@
+package com.intellij.structuralsearch.plugin.util;
+
+import com.intellij.openapi.progress.ProgressIndicator;
+import com.intellij.psi.PsiFile;
+import com.intellij.structuralsearch.MatchResult;
+import com.intellij.structuralsearch.MatchResultSink;
+import com.intellij.structuralsearch.MatchingProcess;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.LinkedList;
+import java.util.List;
+
+public class CollectingMatchResultSink implements MatchResultSink {
+ private final List<MatchResult> matches = new LinkedList<MatchResult>();
+
+ public void newMatch(MatchResult result) {
+ matches.add(result);
+ }
+
+ /* Notifies sink about starting the matching for given element
+ * @param element the current file
+ */
+ public void processFile(PsiFile element) {
+ }
+
+ public void matchingFinished() {
+ }
+
+ public ProgressIndicator getProgressIndicator() {
+ return null;
+ }
+
+ public void setMatchingProcess(MatchingProcess process) {
+ }
+
+ @NotNull
+ public List<MatchResult> getMatches() {
+ return matches;
+ }
+}