package jetbrains.mps.idea.java.fastFind; /*Generated by MPS */ import org.jetbrains.mps.openapi.persistence.FindUsagesParticipant; import com.intellij.openapi.components.ApplicationComponent; import java.util.Collection; import org.jetbrains.mps.openapi.model.SModel; import java.util.Set; import org.jetbrains.mps.openapi.model.SNode; import org.jetbrains.mps.openapi.util.Consumer; import org.jetbrains.mps.openapi.model.SReference; import jetbrains.mps.idea.java.psiStubs.PsiJavaStubModelDescriptor; import jetbrains.mps.persistence.java.library.JavaClassStubModelDescriptor; import org.jetbrains.mps.openapi.language.SAbstractConcept; import org.jetbrains.mps.openapi.model.SModelReference; import jetbrains.mps.persistence.PersistenceRegistry; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; /** * Suppressing searching in psi and class file stubs */ public class EmptyJavaStubsFindUsages implements FindUsagesParticipant, ApplicationComponent { public void findUsages(Collection<SModel> models, Set<SNode> set, Consumer<SReference> consumer, Consumer<SModel> processedConsumer) { // just skipping java psi stub models from find usages // usages in java should be found via idea ReferenceSearch for (SModel model : models) { if (model instanceof PsiJavaStubModelDescriptor || model instanceof JavaClassStubModelDescriptor) { processedConsumer.consume(model); } } } public void findInstances(Collection<SModel> collection, Set<SAbstractConcept> set, Consumer<SNode> consumer, Consumer<SModel> consumer1) { // let's not skip this, it's not going to slow down anything } public void findModelUsages(Collection<SModel> collection, Set<SModelReference> set, Consumer<SModel> consumer, Consumer<SModel> consumer1) { // let's not skip this, it's not going to slow down anything } public void initComponent() { PersistenceRegistry.getInstance().addFindUsagesParticipant(this); } public void disposeComponent() { PersistenceRegistry.getInstance().removeFindUsagesParticipant(this); } @NonNls @NotNull public String getComponentName() { return "Empty PSI java stub find usages participant"; } }