cleanup
authorAlexey Kudravtsev <cdr@intellij.com>
Sat, 14 Jul 2018 11:22:36 +0000 (14:22 +0300)
committerAlexey Kudravtsev <cdr@intellij.com>
Mon, 16 Jul 2018 10:32:34 +0000 (13:32 +0300)
96 files changed:
java/compiler/impl/src/com/intellij/compiler/ant/GenerationOptionsImpl.java
java/compiler/impl/src/com/intellij/compiler/backwardRefs/CompilerReferenceServiceBase.java
java/compiler/openapi/src/com/intellij/compiler/ModuleCompilerUtil.java
java/idea-ui/src/com/intellij/ide/util/frameworkSupport/FrameworkSupportUtil.java
java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/JavaModuleGraphUtil.java
java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/LoopAnalyzer.java
java/java-analysis-impl/src/com/intellij/codeInspection/unusedLibraries/UnusedLibrariesInspection.java
java/java-impl/src/com/intellij/codeInspection/ex/GlobalJavaInspectionContextImpl.java
java/java-impl/src/com/intellij/cyclicDependencies/CyclicDependenciesBuilder.java
java/java-impl/src/com/intellij/ide/projectView/impl/nodes/PackageUtil.java
java/java-impl/src/com/intellij/psi/impl/search/SimpleAccessorScopeProvider.java
java/java-impl/src/com/intellij/psi/refResolve/RefResolveServiceImpl.java
java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java
java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationLabeler.java
java/java-indexing-impl/src/com/intellij/psi/impl/search/AnnotatedPackagesSearcher.java
java/java-indexing-impl/src/com/intellij/psi/impl/search/CustomPropertyScopeProvider.java
java/java-psi-api/src/com/intellij/psi/search/PackageScope.java
java/openapi/src/com/intellij/util/modules/CircularModuleDependenciesDetector.java
jps/jps-builders/src/org/jetbrains/jps/builders/impl/BuildTargetIndexImpl.java
jps/jps-builders/src/org/jetbrains/jps/incremental/artifacts/impl/ArtifactSorter.java
jps/jps-builders/src/org/jetbrains/jps/incremental/artifacts/impl/JarsBuilder.java
platform/analysis-api/src/com/intellij/psi/search/GlobalSearchScopesCore.java
platform/analysis-impl/src/com/intellij/codeInspection/ex/InspectionProfileImpl.java
platform/core-api/src/com/intellij/psi/search/DelegatingGlobalSearchScope.java
platform/core-api/src/com/intellij/psi/search/EverythingGlobalScope.java
platform/core-api/src/com/intellij/psi/search/GlobalSearchScope.java
platform/core-api/src/com/intellij/psi/search/NonClasspathDirectoriesScope.java
platform/core-impl/src/com/intellij/codeInsight/controlflow/ControlFlowUtil.java
platform/core-impl/src/com/intellij/core/CoreProjectScopeBuilder.java
platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.java
platform/core-impl/src/com/intellij/psi/search/ProjectScopeImpl.java
platform/core-impl/src/com/intellij/util/graph/impl/CycleFinder.java
platform/core-impl/src/com/intellij/util/graph/impl/GraphAlgorithmsImpl.java
platform/extensions/src/com/intellij/openapi/extensions/ExtensionPointName.java
platform/extensions/src/com/intellij/openapi/extensions/LoadingOrder.java
platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/AbstractIdeModifiableModelsProvider.java
platform/indexing-api/src/com/intellij/psi/search/ProjectAndLibrariesScope.java
platform/indexing-impl/src/com/intellij/find/findUsages/FindUsagesHelper.java
platform/indexing-impl/src/com/intellij/openapi/module/impl/scopes/ModuleWithDependentsScope.java
platform/indexing-impl/src/com/intellij/openapi/module/impl/scopes/ModulesScope.java
platform/indexing-impl/src/com/intellij/psi/impl/search/PsiSearchHelperImpl.java
platform/indexing-impl/src/com/intellij/psi/search/ProjectScopeBuilderImpl.java
platform/indexing-impl/src/com/intellij/util/indexing/AdditionalIndexableFileSet.java
platform/indexing-impl/src/com/intellij/util/indexing/AdditionalIndexedRootsScope.java
platform/lang-impl/src/com/intellij/build/AbstractViewManager.java
platform/lang-impl/src/com/intellij/build/BuildViewManager.java
platform/lang-impl/src/com/intellij/build/DebugTasksViewManager.java
platform/lang-impl/src/com/intellij/build/RunTasksViewManager.java
platform/lang-impl/src/com/intellij/build/SyncViewManager.java
platform/lang-impl/src/com/intellij/build/internal/DummyTasksViewManager.java
platform/lang-impl/src/com/intellij/codeInspection/actions/FileFilterPanel.java
platform/lang-impl/src/com/intellij/execution/ui/layout/impl/RunnerContentUi.java
platform/lang-impl/src/com/intellij/find/impl/FindDialog.java
platform/lang-impl/src/com/intellij/find/impl/FindInProjectTask.java
platform/lang-impl/src/com/intellij/find/impl/FindInProjectUtil.java
platform/lang-impl/src/com/intellij/find/impl/FindPopupPanel.java
platform/lang-impl/src/com/intellij/ide/scratch/ScratchesSearchScope.java
platform/lang-impl/src/com/intellij/ide/util/AbstractTreeClassChooserDialog.java
platform/lang-impl/src/com/intellij/mock/MockGlobalSearchScope.java
platform/lang-impl/src/com/intellij/psi/search/PredefinedSearchScopeProviderImpl.java
platform/platform-api/src/com/intellij/ui/MouseDragHelper.java
platform/platform-api/src/com/intellij/ui/content/TabbedContent.java
platform/platform-api/src/com/intellij/ui/tabs/TabInfo.java
platform/platform-api/src/com/intellij/ui/tabs/impl/DragHelper.java
platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorTabbedContainer.java
platform/platform-impl/src/com/intellij/ui/JBTabsPaneImpl.java
platform/platform-impl/src/com/intellij/ui/TabbedPane.java
platform/platform-impl/src/com/intellij/ui/TabbedPaneImpl.java
platform/platform-impl/src/com/intellij/ui/TabbedPaneWrapper.java
platform/platform-impl/src/com/intellij/ui/content/TabbedPaneContentUI.java
platform/platform-impl/src/com/intellij/ui/content/impl/ContentImpl.java
platform/platform-impl/src/com/intellij/ui/content/impl/TabbedContentImpl.java
platform/platform-tests/testSrc/com/intellij/util/graph/GraphTestCase.java
platform/projectModel-impl/src/com/intellij/openapi/module/impl/ModuleManagerImpl.java
platform/projectModel-impl/src/com/intellij/openapi/roots/impl/ModifiableModelCommitter.java
platform/testRunner/src/com/intellij/execution/testframework/SourceScope.java
platform/usageView/src/com/intellij/usages/FindUsagesProcessPresentation.java
platform/usageView/src/com/intellij/usages/impl/SearchForUsagesRunnable.java
platform/util/src/com/intellij/ui/awt/RelativePoint.java
platform/util/src/com/intellij/util/graph/CachingSemiGraph.java
platform/util/src/com/intellij/util/graph/Graph.java
platform/util/src/com/intellij/util/graph/GraphGenerator.java
platform/util/src/com/intellij/util/graph/InboundSemiGraph.java
platform/util/src/com/intellij/util/graph/OutboundSemiGraph.java
platform/util/testSrc/com/intellij/util/graph/DFSTBuilderTest.java
platform/util/testSrc/com/intellij/util/graph/GraphGeneratorTest.java
platform/vcs-impl/src/com/intellij/impl/ConversionServiceImpl.java
platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangesViewManager.java
platform/vcs-impl/src/com/intellij/openapi/vcs/changes/DnDActivateOnHoldTargetContent.java
platform/vcs-impl/src/com/intellij/openapi/vcs/changes/shelf/ShelvedChangesViewManager.java
platform/vcs-impl/src/com/intellij/openapi/vcs/impl/AbstractVcsHelperImpl.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/TailRecursionInspection.java
plugins/gradle/java/src/config/GradleUseScopeEnlarger.kt
plugins/properties/src/com/intellij/lang/properties/editor/ResourceBundlePropertiesUpdateManager.java
plugins/terminal/src/org/jetbrains/plugins/terminal/JBTabbedTerminalWidget.java
plugins/testng/src/com/theoryinpractice/testng/inspection/TestNGSearchScope.java

index 153033fde8b12074d1647e03c583157cb483e8b2..3af1437e5f29039c9102dca3943640b925cb27ae 100644 (file)
@@ -34,6 +34,7 @@ import com.intellij.util.graph.CachingSemiGraph;
 import com.intellij.util.graph.Graph;
 import com.intellij.util.graph.GraphGenerator;
 import com.intellij.util.graph.InboundSemiGraph;
+import org.jetbrains.annotations.NotNull;
 
 import java.io.File;
 import java.util.*;
@@ -230,10 +231,13 @@ public class GenerationOptionsImpl extends GenerationOptions {
     }
 
     final Graph<ModuleChunk> moduleChunkGraph = GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<ModuleChunk>() {
+      @NotNull
       public Collection<ModuleChunk> getNodes() {
         return map.values();
       }
 
+      @NotNull
+      @Override
       public Iterator<ModuleChunk> getIn(ModuleChunk n) {
         final Chunk<Module> chunk = reverseMap.get(n);
         final Iterator<Chunk<Module>> in = chunkGraph.getIn(chunk);
index 9d2035bc180c499b31bba28e8c7c27a058dc2b2f..443b4a4fc8cdec93fa098763088a7a3603390ed6 100644 (file)
@@ -488,11 +488,6 @@ public abstract class CompilerReferenceServiceBase<Reader extends CompilerRefere
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
index 9cdc766ad6e12c3feb4138a76c9469623d3f73cf..138292189558d9a0b807c79fbf7a5e51aebe309b 100644 (file)
@@ -35,11 +35,13 @@ public final class ModuleCompilerUtil {
   @NotNull
   private static Graph<Module> createModuleGraph(@NotNull Module[] modules) {
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<Module>() {
+      @NotNull
       @Override
       public Collection<Module> getNodes() {
         return Arrays.asList(modules);
       }
 
+      @NotNull
       @Override
       public Iterator<Module> getIn(Module module) {
         return Arrays.asList(getDependencies(module)).iterator();
@@ -113,6 +115,7 @@ public final class ModuleCompilerUtil {
   @NotNull
   private static Graph<ModuleSourceSet> createModuleSourceDependenciesGraph(@NotNull RootModelProvider provider) {
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<ModuleSourceSet>() {
+      @NotNull
       @Override
       public Collection<ModuleSourceSet> getNodes() {
         Module[] modules = provider.getModules();
@@ -124,6 +127,7 @@ public final class ModuleCompilerUtil {
         return result;
       }
 
+      @NotNull
       @Override
       public Iterator<ModuleSourceSet> getIn(final ModuleSourceSet n) {
         ModuleRootModel model = provider.getRootModel(n.getModule());
index a1e0a7ce788a62c8905a7c388d1696416bfa6eec..063831ce29b12a9e469caeffd3d03efb91961b24 100644 (file)
@@ -130,10 +130,13 @@ public class FrameworkSupportUtil {
       myFrameworkSupportProviders = new ArrayList<>(frameworkSupportProviders);
     }
 
+    @NotNull
     public Collection<FrameworkSupportInModuleProvider> getNodes() {
       return myFrameworkSupportProviders;
     }
 
+    @NotNull
+    @Override
     public Iterator<FrameworkSupportInModuleProvider> getIn(final FrameworkSupportInModuleProvider provider) {
       List<FrameworkSupportInModuleProvider> dependencies = new ArrayList<>();
       String underlyingId = provider.getFrameworkType().getUnderlyingFrameworkTypeId();
index 2962095a54510acb6784ba59cfac583ecd3d20fc..3cb185417b4e5ec6f099e697a4373c486c626ca4 100644 (file)
@@ -340,16 +340,19 @@ public class JavaModuleGraphUtil {
       myInbound = inbound;
     }
 
+    @NotNull
     @Override
     public Collection<N> getNodes() {
       return myNodes;
     }
 
+    @NotNull
     @Override
     public Iterator<N> getIn(N n) {
       return myInbound ? myEdges.get(n).iterator() : Collections.emptyIterator();
     }
 
+    @NotNull
     @Override
     public Iterator<N> getOut(N n) {
       return myInbound ? Collections.emptyIterator() : myEdges.get(n).iterator();
index 3d78b3bdb6a9688c8749bc54369b0c04e1dcb422..7c30e5e6a80ad356fbbedfbae3536bdb83c2002f 100644 (file)
@@ -56,17 +56,20 @@ class LoopAnalyzer {
       }
     }
 
+    @NotNull
     @Override
     public Collection<Instruction> getNodes() {
       return Arrays.asList(myFlow.getInstructions());
     }
 
+    @NotNull
     @Override
     public Iterator<Instruction> getIn(Instruction n) {
       int[] ins = myIns.get(n.getIndex());
       return indicesToInstructions(ins);
     }
 
+    @NotNull
     @Override
     public Iterator<Instruction> getOut(Instruction instruction) {
       int fromIndex = instruction.getIndex();
index c84f3cec429ba8e8c2afc70eb9cb21c64ff90f6b..bd0c1b74576f55502ffbdd4eaa17840f3bf762d6 100644 (file)
@@ -136,11 +136,13 @@ public class UnusedLibrariesInspection extends GlobalInspectionTool {
     collectClassesPerRoots(givenRoots, fromClasses, toClasses);
 
     Graph<VirtualFile> graph = GraphGenerator.generate(new InboundSemiGraph<VirtualFile>() {
+      @NotNull
       @Override
       public Collection<VirtualFile> getNodes() {
         return Arrays.asList(givenRoots);
       }
 
+      @NotNull
       @Override
       public Iterator<VirtualFile> getIn(VirtualFile n) {
         Set<String> classesInCurrentRoot = fromClasses.get(n);
index 3ce72e09211db07aca1e831722cb1a55c1cfc67d..e6d0360a4758e7139ec64d63fc2a41c5cb489cd0 100644 (file)
@@ -8,10 +8,10 @@ import com.intellij.codeInspection.GlobalInspectionContext;
 import com.intellij.codeInspection.GlobalJavaInspectionContext;
 import com.intellij.codeInspection.InspectionManager;
 import com.intellij.codeInspection.InspectionsBundle;
-import com.intellij.codeInspection.deadCode.UnusedDeclarationInspection;
+import com.intellij.codeInspection.deadCode.UnusedDeclarationInspectionBase;
 import com.intellij.codeInspection.reference.*;
 import com.intellij.codeInspection.ui.InspectionToolPresentation;
-import com.intellij.lang.StdLanguages;
+import com.intellij.lang.java.JavaLanguage;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.application.ReadAction;
 import com.intellij.openapi.diagnostic.Logger;
@@ -91,7 +91,7 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
     return manager.getExtension(RefJavaManager.MANAGER).getEntryPointsManager();
   }
 
-  @SuppressWarnings({"UseOfSystemOutOrSystemErr"})
+  @SuppressWarnings("UseOfSystemOutOrSystemErr")
   public static boolean isInspectionsEnabled(final boolean online, @NotNull Project project) {
     final Module[] modules = ModuleManager.getInstance(project).getModules();
     if (online) {
@@ -160,11 +160,7 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
   }
 
   private static <T extends Processor> void enqueueRequestImpl(RefElement refElement, Map<SmartPsiElementPointer, List<T>> requestMap, T processor) {
-    List<T> requests = requestMap.get(refElement.getPointer());
-    if (requests == null) {
-      requests = new ArrayList<>();
-      requestMap.put(refElement.getPointer(), requests);
-    }
+    List<T> requests = requestMap.computeIfAbsent(refElement.getPointer(), __ -> new ArrayList<>());
     requests.add(processor);
   }
 
@@ -196,11 +192,6 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
       }
 
       @Override
-      public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-        return 0;
-      }
-
-      @Override
       public boolean isSearchInModuleContent(@NotNull Module aModule) {
         return true;
       }
@@ -297,7 +288,7 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
     }
   }
 
-  private String getClassPresentableName(final PsiClass psiClass) {
+  private static String getClassPresentableName(@NotNull PsiClass psiClass) {
     return ReadAction.compute(() -> {
       final String qualifiedName = psiClass.getQualifiedName();
       return qualifiedName != null ? qualifiedName : psiClass.getName();
@@ -310,18 +301,15 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
 
   private static <Member extends PsiMember, P extends Processor<Member>> PsiElementProcessorAdapter<Member> createMembersProcessor(final List<P> processors,
                                                                                                                                    final AnalysisScope scope) {
-    return new PsiElementProcessorAdapter<>(new PsiElementProcessor<Member>() {
-      @Override
-      public boolean execute(@NotNull Member member) {
-        if (scope.contains(member)) return true;
-        final List<P> processorsArrayed = new ArrayList<>(processors);
-        for (P processor : processorsArrayed) {
-          if (!processor.process(member)) {
-            processors.remove(processor);
-          }
+    return new PsiElementProcessorAdapter<>(member -> {
+      if (scope.contains(member)) return true;
+      final List<P> processorsArrayed = new ArrayList<>(processors);
+      for (P processor : processorsArrayed) {
+        if (!processor.process(member)) {
+          processors.remove(processor);
         }
-        return !processors.isEmpty();
       }
+      return !processors.isEmpty();
     });
   }
 
@@ -364,26 +352,23 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
 
   private static PsiReferenceProcessor createReferenceProcessor(@NotNull final List<UsagesProcessor> processors,
                                                                 final GlobalInspectionContext context) {
-    return new PsiReferenceProcessor() {
-      @Override
-      public boolean execute(PsiReference reference) {
-        AnalysisScope scope = context.getRefManager().getScope();
-        if (scope != null && scope.contains(reference.getElement()) && reference.getElement().getLanguage() == StdLanguages.JAVA ||
-            PsiTreeUtil.getParentOfType(reference.getElement(), PsiDocComment.class) != null) {
-          return true;
-        }
+    return reference -> {
+      AnalysisScope scope = context.getRefManager().getScope();
+      if (scope != null && scope.contains(reference.getElement()) && reference.getElement().getLanguage() == JavaLanguage.INSTANCE ||
+          PsiTreeUtil.getParentOfType(reference.getElement(), PsiDocComment.class) != null) {
+        return true;
+      }
 
-        synchronized (processors) {
-          UsagesProcessor[] processorsArrayed = processors.toArray(new UsagesProcessor[0]);
-          for (UsagesProcessor processor : processorsArrayed) {
-            if (!processor.process(reference)) {
-              processors.remove(processor);
-            }
+      synchronized (processors) {
+        UsagesProcessor[] processorsArrayed = processors.toArray(new UsagesProcessor[0]);
+        for (UsagesProcessor processor : processorsArrayed) {
+          if (!processor.process(reference)) {
+            processors.remove(processor);
           }
         }
-
-        return !processors.isEmpty();
       }
+
+      return !processors.isEmpty();
     };
   }
 
@@ -395,7 +380,7 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
     // UnusedDeclarationInspection should run first
     for (int i = 0; i < globalTools.size(); i++) {
       InspectionToolWrapper toolWrapper = globalTools.get(i).getTool();
-      if (UnusedDeclarationInspection.SHORT_NAME.equals(toolWrapper.getShortName())) {
+      if (UnusedDeclarationInspectionBase.SHORT_NAME.equals(toolWrapper.getShortName())) {
         Collections.swap(globalTools, i, 0);
         break;
       }
index 517b2369efbb1b41d0a6fa9caf83799c08e9a595..1838b92a7cbec0781b6bc33b66fe43af29bf91c1 100644 (file)
@@ -27,6 +27,7 @@ import com.intellij.packageDependencies.DependenciesBuilder;
 import com.intellij.packageDependencies.ForwardDependenciesBuilder;
 import com.intellij.psi.*;
 import com.intellij.util.graph.*;
+import org.jetbrains.annotations.NotNull;
 
 import java.util.*;
 
@@ -236,10 +237,14 @@ public class CyclicDependenciesBuilder{
 
   private Graph<PsiPackage> buildGraph() {
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<PsiPackage>() {
+      @Override
+      @NotNull
       public Collection<PsiPackage> getNodes() {
         return getAllScopePackages().values();
       }
 
+      @NotNull
+      @Override
       public Iterator<PsiPackage> getIn(PsiPackage psiPack) {
         final Set<PsiPackage> psiPackages = myPackageDependencies.get(psiPack);
         if (psiPackages == null) {     //for packs without java classes
index 25946709b50e527f9d9d1ff14b9a285e1b3f5f44..5bb8dc2a252bb6c4a64dc93cf0939610c6980431 100644 (file)
@@ -33,9 +33,9 @@ import java.util.*;
 
 public class PackageUtil {
   @NotNull
-  public static PsiPackage[] getSubpackages(@NotNull PsiPackage aPackage,
-                                            @Nullable Module module,
-                                            final boolean searchInLibraries) {
+  static PsiPackage[] getSubpackages(@NotNull PsiPackage aPackage,
+                                     @Nullable Module module,
+                                     final boolean searchInLibraries) {
     final GlobalSearchScope scopeToShow = getScopeToShow(aPackage.getProject(), module, searchInLibraries);
     List<PsiPackage> result = new ArrayList<>();
     for (PsiPackage psiPackage : aPackage.getSubPackages(scopeToShow)) {
@@ -49,11 +49,11 @@ public class PackageUtil {
     return result.toArray(PsiPackage.EMPTY_ARRAY);
   }
 
-  public static void addPackageAsChild(@NotNull Collection<? super AbstractTreeNode> children,
-                                       @NotNull PsiPackage aPackage,
-                                       @Nullable Module module,
-                                       @NotNull ViewSettings settings,
-                                       final boolean inLibrary) {
+  static void addPackageAsChild(@NotNull Collection<? super AbstractTreeNode> children,
+                                @NotNull PsiPackage aPackage,
+                                @Nullable Module module,
+                                @NotNull ViewSettings settings,
+                                final boolean inLibrary) {
     final boolean shouldSkipPackage = settings.isHideEmptyMiddlePackages() && isPackageEmpty(aPackage, module, !settings.isFlattenPackages(), inLibrary);
     final Project project = aPackage.getProject();
     if (!shouldSkipPackage) {
@@ -93,7 +93,7 @@ public class PackageUtil {
   }
 
   @NotNull
-  public static GlobalSearchScope getScopeToShow(@NotNull Project project, @Nullable Module module, boolean forLibraries) {
+  static GlobalSearchScope getScopeToShow(@NotNull Project project, @Nullable Module module, boolean forLibraries) {
     if (module == null) {
       if (forLibraries) {
         return new ProjectLibrariesSearchScope(project);
@@ -115,11 +115,11 @@ public class PackageUtil {
   }
 
   @NotNull
-  public static Collection<AbstractTreeNode> createPackageViewChildrenOnFiles(@NotNull List<VirtualFile> sourceRoots,
-                                                                              @NotNull Project project,
-                                                                              @NotNull ViewSettings settings,
-                                                                              @Nullable Module module,
-                                                                              final boolean inLibrary) {
+  static Collection<AbstractTreeNode> createPackageViewChildrenOnFiles(@NotNull List<? extends VirtualFile> sourceRoots,
+                                                                       @NotNull Project project,
+                                                                       @NotNull ViewSettings settings,
+                                                                       @Nullable Module module,
+                                                                       final boolean inLibrary) {
     final PsiManager psiManager = PsiManager.getInstance(project);
 
     final List<AbstractTreeNode> children = new ArrayList<>();
@@ -184,7 +184,7 @@ public class PackageUtil {
       PsiPackage parentPackage = aPackage.getParentPackage();
       final StringBuilder buf = new StringBuilder();
       buf.append(aPackage.getName());
-      while (parentPackage != null && (parentPackageInTree == null || !parentPackage.equals(parentPackageInTree))) {
+      while (parentPackage != null && !parentPackage.equals(parentPackageInTree)) {
         final String parentPackageName = parentPackage.getName();
         if (parentPackageName == null || parentPackageName.isEmpty()) {
           break; // reached default package
@@ -204,7 +204,7 @@ public class PackageUtil {
   private static class ModuleLibrariesSearchScope extends GlobalSearchScope {
     private final Module myModule;
 
-    public ModuleLibrariesSearchScope(@NotNull Module module) {
+    ModuleLibrariesSearchScope(@NotNull Module module) {
       super(module.getProject());
       myModule = module;
     }
@@ -235,7 +235,7 @@ public class PackageUtil {
   private static class ProjectLibrariesSearchScope extends GlobalSearchScope {
     private final ProjectFileIndex myFileIndex;
 
-    public ProjectLibrariesSearchScope(@NotNull Project project) {
+    ProjectLibrariesSearchScope(@NotNull Project project) {
       super(project);
       myFileIndex = ProjectRootManager.getInstance(project).getFileIndex();
     }
@@ -246,11 +246,6 @@ public class PackageUtil {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return false;
     }
index 5d9023fed4007a168666ed0cfb5dea1a964d98b1..6ba71f8b2cb2fc9735a6502a2f027c214e3df4d8 100644 (file)
@@ -19,9 +19,11 @@ import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.project.Project;
 import com.intellij.psi.search.GlobalSearchScope;
 import com.intellij.psi.search.SearchScope;
+import org.jetbrains.annotations.NotNull;
 
 public class SimpleAccessorScopeProvider implements CustomPropertyScopeProvider {
-  public SearchScope getScope(final Project project) {
+  @NotNull
+  public SearchScope getScope(@NotNull final Project project) {
     return GlobalSearchScope.getScopeRestrictedByFileTypes(GlobalSearchScope.allScope(project),
                                                            StdFileTypes.JSP, StdFileTypes.JSPX,
                                                            StdFileTypes.XML, StdFileTypes.XHTML);
index 44401b43fbfe84774b6a0a7d1692396f59c5b7ed..0d0e1aa9814eaba4f0daa307ed37354f1341c2ba 100644 (file)
@@ -815,11 +815,6 @@ public class RefResolveServiceImpl extends RefResolveService implements Runnable
       }
 
       @Override
-      public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-        return 0;
-      }
-
-      @Override
       public boolean isSearchInModuleContent(@NotNull Module aModule) {
         return true;
       }
index aba9f48d7bb0a6a00c63e3fbebf025f81896aaf2..eea7f29aa5aeb4833455f57dde723c5ea4ac3344 100644 (file)
@@ -34,6 +34,7 @@ import com.intellij.util.graph.Graph;
 import gnu.trove.TIntArrayList;
 import gnu.trove.TIntProcedure;
 import gnu.trove.TObjectIntHashMap;
+import org.jetbrains.annotations.NotNull;
 
 import java.util.*;
 
@@ -211,11 +212,13 @@ public class ResolverTree {
     }
 
     final DFSTBuilder<PsiTypeVariable> dfstBuilder = new DFSTBuilder<>(new Graph<PsiTypeVariable>() {
+      @NotNull
       @Override
       public Collection<PsiTypeVariable> getNodes() {
         return nodes;
       }
 
+      @NotNull
       @Override
       public Iterator<PsiTypeVariable> getIn(final PsiTypeVariable n) {
         final Set<PsiTypeVariable> in = ins.get(n);
@@ -227,6 +230,7 @@ public class ResolverTree {
         return in.iterator();
       }
 
+      @NotNull
       @Override
       public Iterator<PsiTypeVariable> getOut(final PsiTypeVariable n) {
         final Set<PsiTypeVariable> out = outs.get(n);
index 316c053e7d481306b544b23f3e8e7d6d6da26f95..705a10bc595c9f73aa3fe02d8ee9ec407a187f59 100644 (file)
@@ -201,6 +201,7 @@ public class TypeMigrationLabeler {
   private TypeMigrationUsageInfo[] sortMigratedUsages(TypeMigrationUsageInfo[] infos) {
     final DFSTBuilder<TypeMigrationUsageInfo> builder = new DFSTBuilder<>(GraphGenerator.generate(
       new InboundSemiGraph<TypeMigrationUsageInfo>() {
+        @NotNull
         @Override
         public Collection<TypeMigrationUsageInfo> getNodes() {
           final Set<TypeMigrationUsageInfo> infos = new HashSet<>();
@@ -211,6 +212,7 @@ public class TypeMigrationLabeler {
           return infos;
         }
 
+        @NotNull
         @Override
         public Iterator<TypeMigrationUsageInfo> getIn(TypeMigrationUsageInfo n) {
           final HashSet<Pair<TypeMigrationUsageInfo, PsiType>> rawNodes = myRootsTree.get(n);
index 60a23c35e709459460124d415e053c2a5f96c1a0..7ab82cd7f71721aa5dbbb0bd21d2d4ccf46919bf 100644 (file)
@@ -94,10 +94,6 @@ public class AnnotatedPackagesSearcher implements QueryExecutor<PsiPackage, Anno
   }
 
   private static class PackageInfoFilesOnly extends GlobalSearchScope {
-    @Override
-    public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
-      return 0;
-    }
 
     @Override
     public boolean contains(@NotNull final VirtualFile file) {
index 5c10fc3f6262d4b956ff41c96e36e1b566db7f2a..f259a6d5643884bc68e17ebfea44c45d94aa31b0 100644 (file)
@@ -18,9 +18,11 @@ package com.intellij.psi.impl.search;
 import com.intellij.openapi.extensions.ExtensionPointName;
 import com.intellij.openapi.project.Project;
 import com.intellij.psi.search.SearchScope;
+import org.jetbrains.annotations.NotNull;
 
 public interface CustomPropertyScopeProvider {
   ExtensionPointName<CustomPropertyScopeProvider> EP_NAME = new ExtensionPointName<>("com.intellij.customPropertyScopeProvider");
 
-  SearchScope getScope(final Project project);
+  @NotNull
+  SearchScope getScope(@NotNull Project project);
 }
index 89271e4cdba677d4b2f59f33d9fa69b52c1564ac..a5294505c9ae772b91b0e7d86f9f0d97495afa65 100644 (file)
@@ -37,9 +37,9 @@ public class PackageScope extends GlobalSearchScope {
   private final PsiPackage myPackage;
   private final boolean myIncludeSubpackages;
   private final boolean myIncludeLibraries;
-  protected final boolean myPartOfPackagePrefix;
-  protected final String myPackageQualifiedName;
-  protected final String myPackageQNamePrefix;
+  private final boolean myPartOfPackagePrefix;
+  private final String myPackageQualifiedName;
+  private final String myPackageQNamePrefix;
 
   public PackageScope(@NotNull PsiPackage aPackage, boolean includeSubpackages, final boolean includeLibraries) {
     super(aPackage.getProject());
@@ -80,11 +80,6 @@ public class PackageScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return true;
   }
@@ -94,6 +89,7 @@ public class PackageScope extends GlobalSearchScope {
     return myIncludeLibraries;
   }
 
+  @Override
   public String toString() {
     //noinspection HardCodedStringLiteral
     return "package scope: " + myPackage +
index 4781d781e1a48ba50dcd9ba80baa9ae87f347ce6..0536dea2d4c2de2ff3e233932f31f93cdd5fe717 100644 (file)
@@ -34,11 +34,13 @@ public class CircularModuleDependenciesDetector {
   @NotNull
   private static <T extends ModuleRootModel> Graph<T> createGraphGenerator(@NotNull Map<Module, T> models) {
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<T>() {
+      @NotNull
       @Override
       public Collection<T> getNodes() {
         return models.values();
       }
 
+      @NotNull
       @Override
       public Iterator<T> getIn(final ModuleRootModel model) {
         final List<T> dependencies = new ArrayList<>();
index 8db1e4114ea2939f4693ed7f78963f7d1fc92794..455d149c4f10a427f0f7fc3cfd90550b46b9c7dc 100644 (file)
@@ -81,11 +81,13 @@ public class BuildTargetIndexImpl implements BuildTargetIndex {
     }
 
     Graph<BuildTarget<?>> graph = GraphGenerator.generate(new InboundSemiGraph<BuildTarget<?>>() {
+      @NotNull
       @Override
       public Collection<BuildTarget<?>> getNodes() {
         return allTargets;
       }
 
+      @NotNull
       @Override
       public Iterator<BuildTarget<?>> getIn(BuildTarget<?> n) {
         Collection<BuildTarget<?>> deps = myDependencies.get(n);
index 8337c26e0fcd16f959100ea0cb572b0fdd3ba160..e0b2cccd31c7e91a1fbea3f31307ebf5ddf5d768 100644 (file)
@@ -148,11 +148,13 @@ public class ArtifactSorter {
       myArtifactNodes = new LinkedHashSet<>(JpsBuilderArtifactService.getInstance().getArtifacts(model, true));
     }
 
+    @NotNull
     @Override
     public Collection<JpsArtifact> getNodes() {
       return myArtifactNodes;
     }
 
+    @NotNull
     @Override
     public Iterator<JpsArtifact> getIn(JpsArtifact artifact) {
       final Set<JpsArtifact> included = new LinkedHashSet<>();
index 8a143db3caef7e9418dcdaa18fdfa844fd1b6fee..c2a5e72f54e1d27fa7881b5b93943285762386ea 100644 (file)
@@ -387,10 +387,13 @@ public class JarsBuilder {
   }
 
   private class JarsGraph implements InboundSemiGraph<JarInfo> {
+    @NotNull
     public Collection<JarInfo> getNodes() {
       return myJarsToBuild;
     }
 
+    @NotNull
+    @Override
     public Iterator<JarInfo> getIn(final JarInfo n) {
       Set<JarInfo> ins = new HashSet<>();
       final DestinationInfo destination = n.getDestination();
index 43d5640de6bf1cc399edac4b80434845407e5ea7..bda7ec27a4277a2c4acc6755f567d0f9c41b6d85 100644 (file)
@@ -18,14 +18,10 @@ import com.intellij.psi.PsiManager;
 import com.intellij.psi.search.scope.packageSet.*;
 import com.intellij.util.ObjectUtils;
 import com.intellij.util.containers.ContainerUtil;
-import java.util.HashSet;
 import org.jetbrains.annotations.NotNull;
 
-import javax.swing.Icon;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Objects;
-import java.util.Set;
+import javax.swing.*;
+import java.util.*;
 
 public class GlobalSearchScopesCore {
   @NotNull
@@ -109,12 +105,6 @@ public class GlobalSearchScopesCore {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true; //TODO (optimization?)
     }
@@ -139,11 +129,6 @@ public class GlobalSearchScopesCore {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
@@ -158,6 +143,7 @@ public class GlobalSearchScopesCore {
       return false;
     }
 
+    @NotNull
     @Override
     public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
       return ModuleManager.getInstance(ObjectUtils.assertNotNull(getProject())).getUnloadedModuleDescriptions();
@@ -181,11 +167,6 @@ public class GlobalSearchScopesCore {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
@@ -243,11 +224,6 @@ public class GlobalSearchScopesCore {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
@@ -341,11 +317,6 @@ public class GlobalSearchScopesCore {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
index 104e8645a30806be574f730e115aedcd7617c282..9c5aefdaa744b3fb477dcf042a345df19ad759f7 100644 (file)
@@ -498,11 +498,13 @@ public class InspectionProfileImpl extends NewInspectionProfile {
     }
 
     DFSTBuilder<String> builder = new DFSTBuilder<>(GraphGenerator.generate(new InboundSemiGraph<String>() {
+      @NotNull
       @Override
       public Collection<String> getNodes() {
         return dependencies.keySet();
       }
 
+      @NotNull
       @Override
       public Iterator<String> getIn(String n) {
         return dependencies.get(n).iterator();
index cc869338ffaae0f478f459134dfb4dbb66a9d72b..a0fea3803b1f13079809fc363a1a81c798a5186f 100644 (file)
@@ -59,6 +59,7 @@ public class DelegatingGlobalSearchScope extends GlobalSearchScope {
     return myBaseScope.isSearchOutsideRootModel();
   }
 
+  @NotNull
   @Override
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     return myBaseScope.getUnloadedModulesBelongingToScope();
index e585ef94332ffe492cde089115d6ab5ccc36987a..d42875860016fbc6265acaf262f7a056d5b3bff0 100644 (file)
@@ -41,11 +41,6 @@ public class EverythingGlobalScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean contains(@NotNull final VirtualFile file) {
     return true;
   }
@@ -70,6 +65,7 @@ public class EverythingGlobalScope extends GlobalSearchScope {
     return true;
   }
 
+  @NotNull
   @Override
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     Project project = getProject();
index 50a9341c5fc213db56a38414482b9a33fc4b349f..c31d2fa548ee6b4ea323894fb21306230a841e00 100644 (file)
@@ -54,8 +54,8 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
   }
 
   /**
-   * @return a positive integer (+1), if file1 is located in the classpath before file2,
-   *         a negative integer (-1), if file1 is located in the classpath after file2
+   * @return a positive integer (e.g. +1), if file1 is located in the classpath before file2,
+   *         a negative integer (e.e -1), if file1 is located in the classpath after file2
    *         zero - otherwise or when the files are not comparable.
    */
   public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
@@ -89,6 +89,7 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
    * Returns descriptions of unloaded modules content of whose might be included into this scope if they had been loaded. Actually search in
    * unloaded modules isn't performed, so this method is used to determine whether a warning about possible missing results should be shown.
    */
+  @NotNull
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     return Collections.emptySet();
   }
@@ -163,6 +164,7 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
         return GlobalSearchScope.this.isSearchInLibraries();
       }
 
+      @NotNull
       @Override
       public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
         return GlobalSearchScope.this.getUnloadedModulesBelongingToScope();
@@ -452,6 +454,7 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
       return myScope1.isSearchOutsideRootModel() && myScope2.isSearchOutsideRootModel();
     }
 
+    @NotNull
     @Override
     public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
       return ContainerUtil.intersection(myScope1.getUnloadedModulesBelongingToScope(), myScope2.getUnloadedModulesBelongingToScope());
@@ -501,7 +504,7 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
       });
       myNestingLevel = 1 + nested[0];
       if (myNestingLevel > 1000) {
-        throw new IllegalStateException("Too many scopes combined: " + myNestingLevel + StringUtil.last(toString(), 500, true));
+        throw new IllegalStateException("Too many scopes combined (" + myNestingLevel + "): " +StringUtil.last(toString(), 500, true));
       }
     }
 
@@ -521,6 +524,7 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
       return ContainerUtil.find(myScopes, GlobalSearchScope::isSearchOutsideRootModel) != null;
     }
 
+    @NotNull
     @Override
     public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
       Set<UnloadedModuleDescription> result = new LinkedHashSet<>();
@@ -688,11 +692,6 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return false;
     }
@@ -741,11 +740,6 @@ public abstract class GlobalSearchScope extends SearchScope implements ProjectAw
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return aModule == myModule;
     }
index f35d4fb46963e9feb728215b9b2e5da8acec7415..cfe1d42870b9b6c151dbd0eb156fe6dd5ef0aba8 100644 (file)
@@ -57,11 +57,6 @@ public class NonClasspathDirectoriesScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return false;
   }
index b9bfc71a5819166a1dd8a6f0dcda25044971ccd8..c1efdba6f126fb945251a88c0d35ece948c2481d 100644 (file)
@@ -44,16 +44,19 @@ public class ControlFlowUtil {
       @NotNull
       final private List<Instruction> myList = Arrays.asList(flow);
 
+      @NotNull
       @Override
       public Collection<Instruction> getNodes() {
         return myList;
       }
 
+      @NotNull
       @Override
       public Iterator<Instruction> getIn(Instruction n) {
         return n.allPred().iterator();
       }
 
+      @NotNull
       @Override
       public Iterator<Instruction> getOut(Instruction n) {
         return n.allSucc().iterator();
index 33eea8d6a853c7f38ad0e3588177b1de62a629cc..fff6172149f17e7bada954e7cb1de01999a70cd2 100644 (file)
@@ -73,11 +73,6 @@ public class CoreProjectScopeBuilder extends ProjectScopeBuilder {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return false;
     }
@@ -103,11 +98,6 @@ public class CoreProjectScopeBuilder extends ProjectScopeBuilder {
     }
 
     @Override
-    public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-      return 0;
-    }
-
-    @Override
     public boolean isSearchInModuleContent(@NotNull Module aModule) {
       return true;
     }
@@ -117,6 +107,7 @@ public class CoreProjectScopeBuilder extends ProjectScopeBuilder {
       return false;
     }
 
+    @NotNull
     @Override
     public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
       return myFileIndexFacade.getUnloadedModuleDescriptions();
index f7d30a4c3104e0494d1efb951b9fa3b20db798ec..c6bea9b1bfa22591bcfe9adfb5c3960b08274696 100644 (file)
@@ -597,11 +597,13 @@ public class PluginManagerCore {
     // needed to make sure that extensions are always in the same order
     ids.sort((o1, o2) -> o2.getIdString().compareTo(o1.getIdString()));
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<PluginId>() {
+      @NotNull
       @Override
       public Collection<PluginId> getNodes() {
         return ids;
       }
 
+      @NotNull
       @Override
       public Iterator<PluginId> getIn(PluginId pluginId) {
         IdeaPluginDescriptor descriptor = idToDescriptorMap.get(pluginId);
index 4d487c22ed049248471cc2807487b49854357bd0..355e51f57409c0add31f91d834340691f8d82931 100644 (file)
@@ -44,11 +44,6 @@ public class ProjectScopeImpl extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return true;
   }
@@ -69,6 +64,7 @@ public class ProjectScopeImpl extends GlobalSearchScope {
     return getDisplayName();
   }
 
+  @NotNull
   @Override
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     return myFileIndex.getUnloadedModuleDescriptions();
index d9f0bcb109399c8c9c388c26cc1c068d78d7bc69..788d6885b6dc19e71592947fb6e2150f265705b8 100644 (file)
@@ -23,6 +23,7 @@ public class CycleFinder<Node> {
     final Set<List<Node>> result = new HashSet<>();
 
     final Graph<Node> graphWithoutNode = new Graph<Node>() {
+      @NotNull
       @Override
       public Collection<Node> getNodes() {
         final Collection<Node> nodes = myGraph.getNodes();
@@ -30,6 +31,7 @@ public class CycleFinder<Node> {
         return nodes;
       }
 
+      @NotNull
       @Override
       public Iterator<Node> getIn(final Node n) {
         final Set<Node> nodes = ContainerUtil.newHashSet(myGraph.getIn(n));
@@ -37,6 +39,7 @@ public class CycleFinder<Node> {
         return nodes.iterator();
       }
 
+      @NotNull
       @Override
       public Iterator<Node> getOut(final Node n) {
         final Set<Node> nodes = ContainerUtil.newHashSet(myGraph.getOut(n));
index 90a512ba31bd706a663b3149d19967bd55a184fa..992530929bcfffd88e4cc4cadbdf13ce11dede29 100644 (file)
@@ -35,14 +35,20 @@ public class GraphAlgorithmsImpl extends GraphAlgorithms {
   @Override
   public <Node> Graph<Node> invertEdgeDirections(@NotNull final Graph<Node> graph) {
     return new Graph<Node>() {
+      @Override
+      @NotNull
       public Collection<Node> getNodes() {
         return graph.getNodes();
       }
 
+      @Override
+      @NotNull
       public Iterator<Node> getIn(final Node n) {
         return graph.getOut(n);
       }
 
+      @Override
+      @NotNull
       public Iterator<Node> getOut(final Node n) {
         return graph.getIn(n);
       }
@@ -70,11 +76,13 @@ public class GraphAlgorithmsImpl extends GraphAlgorithms {
     }
 
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<Chunk<Node>>() {
+      @NotNull
       @Override
       public Collection<Chunk<Node>> getNodes() {
         return chunks;
       }
 
+      @NotNull
       @Override
       public Iterator<Chunk<Node>> getIn(Chunk<Node> chunk) {
         final Set<Node> chunkNodes = chunk.getNodes();
index b686cd7cf31c5b047de07f035af0e2aae8977e57..34acbbcb848cb74d625b9c398626c3831a7fdd61 100644 (file)
@@ -40,7 +40,7 @@ public class ExtensionPointName<T> {
     return Extensions.getExtensions(this, areaInstance);
   }
 
-  public <V extends T> V findExtension(Class<V> instanceOf) {
+  public <V extends T> V findExtension(@NotNull Class<V> instanceOf) {
     return ContainerUtil.findInstance(getExtensions(), instanceOf);
   }
 }
\ No newline at end of file
index 200ce4f9234660be6d995236dfe21d3caae7034b..69bb50466f0f65c0a7b5d5b9a624a1e57f9ed58b 100644 (file)
@@ -140,6 +140,7 @@ public class LoadingOrder {
     }
 
     InboundSemiGraph<Orderable> graph = new InboundSemiGraph<Orderable>() {
+      @NotNull
       @Override
       public Collection<Orderable> getNodes() {
         List<Orderable> list = ContainerUtil.newArrayList(orderable);
@@ -147,6 +148,7 @@ public class LoadingOrder {
         return list;
       }
 
+      @NotNull
       @Override
       public Iterator<Orderable> getIn(Orderable n) {
         LoadingOrder order = cachedMap.get(n);
index 696e9a011368894abc5b79157e62e2df3dbbe86e..950b7b3b05cfe4b8072804c9af8a209dc5c535fc 100644 (file)
@@ -319,11 +319,13 @@ public abstract class AbstractIdeModifiableModelsProvider extends IdeModelsProvi
 
   private Graph<Module> getModuleGraph() {
     return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<Module>() {
+      @NotNull
       @Override
       public Collection<Module> getNodes() {
         return ContainerUtil.list(getModules());
       }
 
+      @NotNull
       @Override
       public Iterator<Module> getIn(Module m) {
         Module[] dependentModules = getModifiableRootModel(m).getModuleDependencies(true);
index cfa1e666edc67670ffc4b6e6f95b98d4c2055f04..ef9632d83186937d2a99d9bae184db1c381793c0 100644 (file)
@@ -98,6 +98,7 @@ public class ProjectAndLibrariesScope extends GlobalSearchScope {
     return true;
   }
 
+  @NotNull
   @Override
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     Project project = getProject();
index 2b4d4c6e2700bc214ddae341338ba4e4bb8e57c0..ca7fd41ca759f2a8dd7a386b3c834fa674c13049 100644 (file)
@@ -34,7 +34,7 @@ class FindUsagesHelper {
   static boolean processUsagesInText(@NotNull final PsiElement element,
                                      @NotNull Collection<String> stringToSearch,
                                      @NotNull GlobalSearchScope searchScope,
-                                     @NotNull Processor<UsageInfo> processor) {
+                                     @NotNull Processor<? super UsageInfo> processor) {
     final TextRange elementTextRange = ReadAction.compute(() -> !element.isValid() || element instanceof PsiCompiledElement ? null : element.getTextRange());
     UsageInfoFactory factory = (usage, startOffset, endOffset) -> {
       if (!element.isValid()) return new UsageInfo(usage, startOffset, endOffset, true);
index 9720e857a935b8d42ffb6d164dbc7916fdfa2f8a..e19c4109a0b8182527c8caf87b15230a094f8e29 100644 (file)
@@ -56,17 +56,17 @@ class ModuleWithDependentsScope extends GlobalSearchScope {
     myModules = buildDependents(myModule);
   }
 
+  @NotNull
   private static Set<Module> buildDependents(Module module) {
     Set<Module> result = new THashSet<>();
     result.add(module);
-    
-    Set<Module> processedExporting = new THashSet<>();
 
     ModuleIndex index = getModuleIndex(module.getProject());
 
     Queue<Module> walkingQueue = new Queue<>(10);
     walkingQueue.addLast(module);
 
+    Set<Module> processedExporting = new THashSet<>();
     while (!walkingQueue.isEmpty()) {
       Module current = walkingQueue.pullFirst();
       processedExporting.add(current);
@@ -117,11 +117,6 @@ class ModuleWithDependentsScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return myModules.contains(aModule);
   }
@@ -131,6 +126,7 @@ class ModuleWithDependentsScope extends GlobalSearchScope {
     return false;
   }
 
+  @NotNull
   @Override
   public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     ModuleManager moduleManager = ModuleManager.getInstance(myModule.getProject());
@@ -138,11 +134,13 @@ class ModuleWithDependentsScope extends GlobalSearchScope {
                                     moduleManager::getUnloadedModuleDescription);
   }
 
+  @Override
   @NonNls
   public String toString() {
     return "Module with dependents:" + myModule.getName();
   }
 
+  @Override
   public boolean equals(Object o) {
     if (this == o) return true;
     if (!(o instanceof ModuleWithDependentsScope)) return false;
@@ -152,6 +150,7 @@ class ModuleWithDependentsScope extends GlobalSearchScope {
     return myModule.equals(moduleWithDependentsScope.myModule);
   }
 
+  @Override
   public int hashCode() {
     return myModule.hashCode();
   }
index 0e1cd76bc9f95655e1db64de03b26736d7da2749..55e4a4ff3e1aec037cdecf54cbd997d41356a86a 100644 (file)
@@ -43,11 +43,6 @@ public class ModulesScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return myModules.contains(aModule);
   }
index 145e49d92a4fbf4fd1ed753f4f2e58be01e27054..011152cbc33b2db806417f3881d8f33dfa091a29 100644 (file)
@@ -289,7 +289,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
    * @param alreadyProcessedFiles the number of files scanned in previous pass.
    * @return true if completed
    */
-  private boolean processPsiFileRoots(@NotNull List<VirtualFile> files,
+  private boolean processPsiFileRoots(@NotNull List<? extends VirtualFile> files,
                                       final int totalSize,
                                       int alreadyProcessedFiles,
                                       @NotNull final ProgressIndicator progress,
@@ -318,10 +318,10 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
   // When encounters write action request, stops all threads, waits for write action to finish and re-starts all threads again.
   // {@code localProcessor} must be as idempotent as possible.
   public static boolean processFilesConcurrentlyDespiteWriteActions(@NotNull Project project,
-                                                                    @NotNull List<VirtualFile> files,
+                                                                    @NotNull List<? extends VirtualFile> files,
                                                                     @NotNull final ProgressIndicator progress,
                                                                     @NotNull AtomicBoolean stopped,
-                                                                    @NotNull final Processor<VirtualFile> localProcessor) {
+                                                                    @NotNull final Processor<? super VirtualFile> localProcessor) {
     ApplicationEx app = (ApplicationEx)ApplicationManager.getApplication();
     if (!app.isDispatchThread()) {
       CoreProgressManager.assertUnderProgress(progress);
@@ -597,7 +597,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
       MultiMap<Set<IdIndexEntry>, RequestWithProcessor> globals = new MultiMap<>();
       final List<Computable<Boolean>> customs = ContainerUtil.newArrayList();
       final Set<RequestWithProcessor> locals = ContainerUtil.newLinkedHashSet();
-      Map<RequestWithProcessor, Processor<PsiElement>> localProcessors = new THashMap<>();
+      Map<RequestWithProcessor, Processor<? super PsiElement>> localProcessors = new THashMap<>();
       distributePrimitives(collectors, locals, globals, customs, localProcessors, progress);
       if (!processGlobalRequestsOptimized(globals, progress, localProcessors)) {
         return false;
@@ -661,7 +661,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
 
   private boolean processGlobalRequestsOptimized(@NotNull MultiMap<Set<IdIndexEntry>, RequestWithProcessor> singles,
                                                  @NotNull ProgressIndicator progress,
-                                                 @NotNull final Map<RequestWithProcessor, Processor<PsiElement>> localProcessors) {
+                                                 @NotNull final Map<RequestWithProcessor, Processor<? super PsiElement>> localProcessors) {
     if (singles.isEmpty()) {
       return true;
     }
@@ -714,7 +714,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
     return result;
   }
 
-  private boolean processCandidates(@NotNull final Map<RequestWithProcessor, Processor<PsiElement>> localProcessors,
+  private boolean processCandidates(@NotNull final Map<RequestWithProcessor, Processor<? super PsiElement>> localProcessors,
                                     @NotNull final MultiMap<VirtualFile, RequestWithProcessor> candidateFiles,
                                     @NotNull ProgressIndicator progress,
                                     int totalSize,
@@ -725,7 +725,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
       final VirtualFile vfile = psiRoot.getVirtualFile();
       for (final RequestWithProcessor singleRequest : candidateFiles.get(vfile)) {
         ProgressManager.checkCanceled();
-        Processor<PsiElement> localProcessor = localProcessors.get(singleRequest);
+        Processor<? super PsiElement> localProcessor = localProcessors.get(singleRequest);
         if (!localProcessor.process(psiRoot)) {
           return false;
         }
@@ -831,7 +831,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
 
   @Nullable("null means we did not find common container files")
   private Set<VirtualFile> intersectionWithContainerNameFiles(@NotNull GlobalSearchScope commonScope,
-                                                              @NotNull Collection<RequestWithProcessor> data,
+                                                              @NotNull Collection<? extends RequestWithProcessor> data,
                                                               @NotNull Set<IdIndexEntry> keys) {
     String commonName = null;
     short searchContext = 0;
@@ -885,7 +885,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
                                            @NotNull Set<RequestWithProcessor> locals,
                                            @NotNull MultiMap<Set<IdIndexEntry>, RequestWithProcessor> globals,
                                            @NotNull List<Computable<Boolean>> customs,
-                                           @NotNull Map<RequestWithProcessor, Processor<PsiElement>> localProcessors,
+                                           @NotNull Map<RequestWithProcessor, Processor<? super PsiElement>> localProcessors,
                                            @NotNull ProgressIndicator progress) {
     for (final Map.Entry<SearchRequestCollector, Processor<? super PsiReference>> entry : collectors.entrySet()) {
       ProgressManager.checkCanceled();
@@ -990,7 +990,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
                                                        @NotNull final GlobalSearchScope scope,
                                                        @Nullable final Condition<Integer> checker,
                                                        @NotNull final Collection<IdIndexEntry> keys,
-                                                       @NotNull final Processor<VirtualFile> processor) {
+                                                       @NotNull final Processor<? super VirtualFile> processor) {
     final FileIndexFacade index = FileIndexFacade.getInstance(project);
     return DumbService.getInstance(project).runReadActionInSmartMode(
       () -> FileBasedIndex.getInstance().processFilesContainingAllKeys(IdIndex.NAME, keys, scope, checker,
@@ -1013,7 +1013,7 @@ public class PsiSearchHelperImpl implements PsiSearchHelper {
   public static boolean processTextOccurrences(@NotNull final PsiElement element,
                                                @NotNull String stringToSearch,
                                                @NotNull GlobalSearchScope searchScope,
-                                               @NotNull final Processor<UsageInfo> processor,
+                                               @NotNull final Processor<? super UsageInfo> processor,
                                                @NotNull final UsageInfoFactory factory) {
     PsiSearchHelper helper = ReadAction.compute(() -> PsiSearchHelper.getInstance(element.getProject()));
 
index 9b6efe2c4673b8794d50bcc06d5e8c4c614124ce..5b5ac094a80e3ac337e0211235a184d756b31213 100644 (file)
@@ -54,6 +54,7 @@ public class ProjectScopeBuilderImpl extends ProjectScopeBuilder {
         return false;
       }
 
+      @NotNull
       @Override
       public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
         return Collections.emptySet();
index 03a7ff0a0446c97f74c7f22cbece5b84383c81c3..277c50c9b2f3ade065ca91a9e04ddd1b25149a96 100644 (file)
@@ -35,16 +35,16 @@ public class AdditionalIndexableFileSet implements IndexableFileSet {
   private volatile Set<VirtualFile> cachedDirectories;
   private volatile IndexableSetContributor[] myExtensions;
 
-  public AdditionalIndexableFileSet(Project project, IndexableSetContributor... extensions) {
+  public AdditionalIndexableFileSet(@NotNull Project project, @NotNull IndexableSetContributor... extensions) {
     myProject = project;
     myExtensions = extensions;
   }
 
-  public AdditionalIndexableFileSet(Project project) {
+  public AdditionalIndexableFileSet(@NotNull Project project) {
     myProject = project;
   }
 
-  public AdditionalIndexableFileSet(IndexableSetContributor... extensions) {
+  AdditionalIndexableFileSet(@NotNull IndexableSetContributor... extensions) {
     myProject = null;
     myExtensions = extensions;
   }
@@ -53,6 +53,7 @@ public class AdditionalIndexableFileSet implements IndexableFileSet {
     myProject = null;
   }
 
+  @NotNull
   private Set<VirtualFile> getDirectories() {
     Set<VirtualFile> directories = cachedDirectories;
     if (directories == null || VfsUtilCore.hasInvalidFiles(directories) || VfsUtilCore.hasInvalidFiles(cachedFiles)) {
@@ -61,12 +62,13 @@ public class AdditionalIndexableFileSet implements IndexableFileSet {
     return directories;
   }
 
-  private THashSet<VirtualFile> collectFilesAndDirectories() {
-    THashSet<VirtualFile> files = new THashSet<>();
-    THashSet<VirtualFile> directories = new THashSet<>();
+  @NotNull
+  private Set<VirtualFile> collectFilesAndDirectories() {
     if (myExtensions == null) {
       myExtensions = Extensions.getExtensions(IndexableSetContributor.EP_NAME);
     }
+    Set<VirtualFile> files = new THashSet<>();
+    Set<VirtualFile> directories = new THashSet<>();
     for (IndexableSetContributor contributor : myExtensions) {
       for (VirtualFile root : IndexableSetContributor.getRootsToIndex(contributor)) {
         (root.isDirectory() ? directories : files).add(root);
index 48bfcbb181a7c941e73d69cbcd87c155fa8373ed..4e9bb9d276d929e818322b4f208025f347d9fe06 100644 (file)
@@ -25,17 +25,18 @@ import org.jetbrains.annotations.NotNull;
  */
 public class AdditionalIndexedRootsScope extends GlobalSearchScope {
   private final GlobalSearchScope myBaseScope;
+  @NotNull
   private final IndexableFileSet myFileSet;
 
-  public AdditionalIndexedRootsScope(GlobalSearchScope baseScope) {
+  public AdditionalIndexedRootsScope(@NotNull GlobalSearchScope baseScope) {
     this(baseScope, new AdditionalIndexableFileSet());
   }
 
-  public AdditionalIndexedRootsScope(GlobalSearchScope baseScope, Class<? extends IndexableSetContributor> providerClass) {
+  public AdditionalIndexedRootsScope(@NotNull GlobalSearchScope baseScope, @NotNull Class<? extends IndexableSetContributor> providerClass) {
     this(baseScope, new AdditionalIndexableFileSet(IndexableSetContributor.EP_NAME.findExtension(providerClass)));
   }
 
-  public AdditionalIndexedRootsScope(GlobalSearchScope baseScope, IndexableFileSet myFileSet) {
+  public AdditionalIndexedRootsScope(@NotNull GlobalSearchScope baseScope, @NotNull IndexableFileSet myFileSet) {
     super(baseScope.getProject());
     myBaseScope = baseScope;
     this.myFileSet = myFileSet;
index cb00cf6d365afe5f2dfb27d402bcc4f3f7a9d223..efce75cab6f9746380819cc7f55e8d2a18f836aa 100644 (file)
@@ -86,6 +86,7 @@ public abstract class AbstractViewManager implements ViewManager, BuildProgressL
     return true;
   }
 
+  @NotNull
   protected abstract String getViewName();
 
   protected Map<BuildInfo, BuildView> getBuildsMap() {
index 8373fa0a82a99d48c81191b625cef3d19afedcde..0b4e747c45176acebb59f521e3dbe1b43dfa4946 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.build;
 
 import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
 
 /**
  * @author Vladislav.Soroka
@@ -25,6 +26,7 @@ public class BuildViewManager extends AbstractViewManager {
     super(project, buildContentManager);
   }
 
+  @NotNull
   @Override
   public String getViewName() {
     return "Build Output";
index 3af0c5403098af7addef06da46d494a681e8babc..29da1f12b4efce6351f23bf76174bc807742273a 100644 (file)
@@ -3,6 +3,7 @@ package com.intellij.build;
 
 import com.intellij.icons.AllIcons;
 import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
 
 import javax.swing.*;
 
@@ -14,6 +15,7 @@ public class DebugTasksViewManager extends TasksViewManager   {
     super(project, buildContentManager);
   }
 
+  @NotNull
   @Override
   public String getViewName() {
     return "Debug";
index 859e15fc891e70ce78bd3dfbd4eafbeacd012f9a..8691bc2309d5f68c20730992bc00963df1836653 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.build;
 
 import com.intellij.icons.AllIcons;
 import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
 
 import javax.swing.*;
 
@@ -28,6 +29,7 @@ public class RunTasksViewManager extends TasksViewManager {
     super(project, buildContentManager);
   }
 
+  @NotNull
   @Override
   public String getViewName() {
     return "Run";
index 72933a1b452f50af0505d050049eabf29054212d..891cad30cb8423ef1bb2863605537029a931edfd 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.build;
 
 import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
 
 /**
  * @author Vladislav.Soroka
@@ -25,6 +26,7 @@ public class SyncViewManager extends AbstractViewManager {
     super(project, buildContentManager);
   }
 
+  @NotNull
   @Override
   public String getViewName() {
     return "Sync";
index ed904cdac95d6adcb020d86ea1dc0dc809a90940..53780bcbe9dfbedc2e30e281b9e906788cf840e9 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.build.TasksViewManager;
 import com.intellij.build.events.BuildEvent;
 import com.intellij.build.events.FinishBuildEvent;
 import com.intellij.openapi.project.Project;
+import org.jetbrains.annotations.NotNull;
 
 /**
  * @author Vladislav.Soroka
@@ -29,6 +30,7 @@ public class DummyTasksViewManager extends TasksViewManager {
     super(project, buildContentManager);
   }
 
+  @NotNull
   @Override
   protected String getViewName() {
     return "Tasks";
index 06ba18e5be2c98a24998db30299a86a831598fc1..a174fd7bc4cef5312423cb1fc5063c8094d08028 100644 (file)
@@ -27,7 +27,6 @@ import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
 import javax.swing.*;
-import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 
 /**
@@ -43,12 +42,7 @@ class FileFilterPanel {
     myUseFileMask.setSelected(StringUtil.isNotEmpty(options.FILE_MASK));
     myFileMask.setEnabled(StringUtil.isNotEmpty(options.FILE_MASK));
     myFileMask.setSelectedItem(options.FILE_MASK);
-    ActionListener listener = new ActionListener() {
-      @Override
-      public void actionPerformed(ActionEvent e) {
-        options.FILE_MASK = myUseFileMask.isSelected() ? (String)myFileMask.getSelectedItem() : null;
-      }
-    };
+    ActionListener listener = __ -> options.FILE_MASK = myUseFileMask.isSelected() ? (String)myFileMask.getSelectedItem() : null;
     myUseFileMask.addActionListener(listener);
     myFileMask.addActionListener(listener);
   }
@@ -67,11 +61,6 @@ class FileFilterPanel {
       }
 
       @Override
-      public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-        return 0;
-      }
-
-      @Override
       public boolean isSearchInModuleContent(@NotNull Module aModule) {
         return true;
       }
index b253510d3ddc2a426d56707a2925353bc7f2196d..70a1169eb4bb8569d005a4732abc2d0d09e68c81 100644 (file)
@@ -1743,7 +1743,7 @@ public class RunnerContentUi implements ContentUI, Disposable, CellTransform.Fac
     private DragSession mySession;
 
     @Override
-    public void dragOutStarted(MouseEvent mouseEvent, TabInfo info) {
+    public void dragOutStarted(@NotNull MouseEvent mouseEvent, @NotNull TabInfo info) {
       JComponent component = info.getComponent();
       Content[] data = CONTENT_KEY.getData((DataProvider)component);
       assert data != null;
@@ -1763,12 +1763,12 @@ public class RunnerContentUi implements ContentUI, Disposable, CellTransform.Fac
     }
 
     @Override
-    public void processDragOut(MouseEvent event, TabInfo source) {
+    public void processDragOut(@NotNull MouseEvent event, @NotNull TabInfo source) {
       mySession.process(event);
     }
 
     @Override
-    public void dragOutFinished(MouseEvent event, TabInfo source) {
+    public void dragOutFinished(@NotNull MouseEvent event, TabInfo source) {
       final Component component = event.getComponent();
       final IdeFrame window = UIUtil.getParentOfType(IdeFrame.class, component);
       mySession.process(event);
index 02ef11e5206d5e5997298ab94b8e28d3e4d7b823..cdd73f7d023ba79faad651bfaf2fd21602676e4b 100644 (file)
@@ -99,12 +99,12 @@ public class FindDialog extends DialogWrapper implements FindUI {
   private static final Logger LOG = Logger.getInstance("#com.intellij.find.impl.FindDialog");
   private final FindUIHelper myHelper;
 
-  private ComboBox myInputComboBox;
-  private ComboBox myReplaceComboBox;
+  private ComboBox<String> myInputComboBox;
+  private ComboBox<String> myReplaceComboBox;
   private StateRestoringCheckBox myCbCaseSensitive;
   private StateRestoringCheckBox myCbPreserveCase;
   private StateRestoringCheckBox myCbWholeWordsOnly;
-  private ComboBox mySearchContext;
+  private ComboBox<String> mySearchContext;
   private StateRestoringCheckBox myCbRegularExpressions;
   private JRadioButton myRbGlobal;
   private JRadioButton myRbSelectedText;
@@ -115,13 +115,13 @@ public class FindDialog extends DialogWrapper implements FindUI {
   private JRadioButton myRbProject;
   private JRadioButton myRbDirectory;
   private JRadioButton myRbModule;
-  private ComboBox myModuleComboBox;
-  private ComboBox myDirectoryComboBox;
+  private ComboBox<String> myModuleComboBox;
+  private ComboBox<String> myDirectoryComboBox;
   private StateRestoringCheckBox myCbWithSubdirectories;
   private JCheckBox myCbToOpenInNewTab;
   private FixedSizeButton mySelectDirectoryButton;
   private StateRestoringCheckBox myUseFileFilter;
-  private ComboBox myFileFilter;
+  private ComboBox<String> myFileFilter;
   private JCheckBox myCbToSkipResultsWhenOneUsage;
   private final Project myProject;
   private final Map<EditorTextField, DocumentListener> myComboBoxListeners = new HashMap<>();
@@ -129,7 +129,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
   private Action myFindAllAction;
   private JRadioButton myRbCustomScope;
   private ScopeChooserCombo myScopeCombo;
-  protected JLabel myReplacePrompt;
+  private JLabel myReplacePrompt;
   private HideableTitledPanel myScopePanel;
   private static boolean myPreviousResultsExpandedState = true;
   private static boolean myPreviewResultsTabWasSelected;
@@ -143,7 +143,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
   private static final String PREVIEW_TITLE = UIBundle.message("tool.window.name.preview");
   private volatile ProgressIndicatorBase myResultsPreviewSearchProgress;
 
-  public FindDialog(FindUIHelper helper){
+  FindDialog(FindUIHelper helper){
     super(helper.getProject(), true);
     myHelper = helper;
     myProject = myHelper.getProject();
@@ -172,6 +172,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     super.doCancelAction();
   }
 
+  @Override
   public void saveSettings() {
     FindSettings.getInstance().setDefaultScopeName(myScopeCombo.getSelectedScopeName());
     applyTo(FindManager.getInstance(myProject).getFindInProjectModel(), false);
@@ -235,11 +236,11 @@ public class FindDialog extends DialogWrapper implements FindUI {
     JLabel prompt = new JLabel(FindBundle.message("find.text.to.find.label"));
     panel.add(prompt, new GridBagConstraints(0,0,1,1,0,1, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,0,UIUtil.DEFAULT_VGAP,UIUtil.DEFAULT_HGAP), 0,0));
 
-    myInputComboBox = new ComboBox(300);
+    myInputComboBox = new ComboBox<>(300);
     revealWhitespaces(myInputComboBox);
     initCombobox(myInputComboBox);
 
-    myReplaceComboBox = new ComboBox(300);
+    myReplaceComboBox = new ComboBox<>(300);
     revealWhitespaces(myReplaceComboBox);
 
     initCombobox(myReplaceComboBox);
@@ -267,7 +268,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     return panel;
   }
 
-  private void revealWhitespaces(@NotNull ComboBox comboBox) {
+  private void revealWhitespaces(@NotNull ComboBox<String> comboBox) {
     ComboBoxEditor comboBoxEditor = new RevealingSpaceComboboxEditor(myProject, comboBox);
     comboBox.setEditor(comboBoxEditor);
     comboBox.setRenderer(new EditorComboBoxRenderer(comboBoxEditor));
@@ -372,7 +373,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
         myContent.getSelectedIndex() == RESULTS_PREVIEW_TAB_INDEX;
   }
 
-  private void makeResultsPreviewActionOverride(final JComboBox component, KeyStroke keyStroke, String newActionKey, final Runnable newAction) {
+  private void makeResultsPreviewActionOverride(final JComboBox<?> component, KeyStroke keyStroke, String newActionKey, final Runnable newAction) {
     InputMap inputMap = component.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
     Object action = inputMap.get(keyStroke);
     inputMap.put(keyStroke, newActionKey);
@@ -703,7 +704,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     filterPanel.setBorder(IdeBorderFactory.createTitledBorder(FindBundle.message("find.filter.file.name.group"),
                                                               true));
 
-    myFileFilter = new ComboBox(100);
+    myFileFilter = new ComboBox<>(100);
     initCombobox(myFileFilter);
     filterPanel.add(myUseFileFilter = createCheckbox(FindBundle.message("find.filter.file.mask.checkbox")),BorderLayout.WEST);
     filterPanel.add(myFileFilter,BorderLayout.CENTER);
@@ -715,7 +716,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     return filterPanel;
   }
 
-  public static void initFileFilter(@NotNull final JComboBox fileFilter, @NotNull final JCheckBox useFileFilter) {
+  public static void initFileFilter(@NotNull final JComboBox<? super String> fileFilter, @NotNull final JCheckBox useFileFilter) {
     fileFilter.setEditable(true);
     String[] fileMasks = FindSettings.getInstance().getRecentFileMasks();
     for(int i=fileMasks.length-1; i >= 0; i--) {
@@ -870,7 +871,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
 
     findOptionsPanel.add(regExPanel);
 
-    mySearchContext = new ComboBox(new Object[] { getPresentableName(FindModel.SearchContext.ANY),
+    mySearchContext = new ComboBox<>(new String[]{getPresentableName(FindModel.SearchContext.ANY),
       getPresentableName(FindModel.SearchContext.IN_COMMENTS),
       getPresentableName(FindModel.SearchContext.IN_STRING_LITERALS),
       getPresentableName(FindModel.SearchContext.EXCEPT_COMMENTS),
@@ -1068,7 +1069,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     }
 
     Arrays.sort(names,String.CASE_INSENSITIVE_ORDER);
-    myModuleComboBox = new ComboBox(names);
+    myModuleComboBox = new ComboBox<>(names);
     myModuleComboBox.addActionListener(__ -> scheduleResultsUpdate());
     scopePanel.add(myModuleComboBox, gbConstraints);
 
@@ -1087,7 +1088,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
 
     gbConstraints.gridx = 1;
     gbConstraints.weightx = 1;
-    myDirectoryComboBox = new ComboBox(200);
+    myDirectoryComboBox = new ComboBox<>(200);
     Component editorComponent = myDirectoryComboBox.getEditor().getEditorComponent();
     if (editorComponent instanceof JTextField) {
       JTextField field = (JTextField)editorComponent;
@@ -1268,7 +1269,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     return (String)myDirectoryComboBox.getEditor().getItem();
   }
 
-  private static void setStringsToComboBox(@NotNull String[] strings, @NotNull ComboBox<String> combo, String selected) {
+  private static void setStringsToComboBox(@NotNull String[] strings, @NotNull ComboBox<? super String> combo, String selected) {
     if (combo.getItemCount() > 0){
       combo.removeAllItems();
     }
@@ -1538,7 +1539,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
         boolean highlighted = textChunk.getType() != null || at.getFontStyle() == Font.BOLD;
         return highlighted
                ? new SimpleTextAttributes(null, at.getFgColor(), at.getWaveColor(),
-                                          (at.getStyle() & ~SimpleTextAttributes.STYLE_BOLD) |
+                                          at.getStyle() & ~SimpleTextAttributes.STYLE_BOLD |
                                           SimpleTextAttributes.STYLE_SEARCH_MATCH)
                : at;
       }
@@ -1641,7 +1642,7 @@ public class FindDialog extends DialogWrapper implements FindUI {
     }
   }
 
-  protected void registerNavigateToSourceShortcutOnComponent(@NotNull final JBTable c, JComponent component) {
+  private void registerNavigateToSourceShortcutOnComponent(@NotNull final JBTable c, JComponent component) {
     AnAction anAction = new AnAction() {
       @Override
       public void actionPerformed(AnActionEvent e) {
index e3c27afdbf56179a9d742a18c41eb573843c79d9..4543dde4d7dcb584be16efa2785f68c895efdc91 100644 (file)
@@ -75,11 +75,11 @@ class FindInProjectTask {
   private final ProgressIndicator myProgress;
   @Nullable private final Module myModule;
   private final Set<VirtualFile> myLargeFiles = Collections.synchronizedSet(ContainerUtil.newTroveSet());
-  private final Set<VirtualFile> myFilesToScanInitially;
+  private final Set<? extends VirtualFile> myFilesToScanInitially;
   private final AtomicLong myTotalFilesSize = new AtomicLong();
   private final String myStringToFindInIndices;
 
-  FindInProjectTask(@NotNull final FindModel findModel, @NotNull final Project project, @NotNull Set<VirtualFile> filesToScanInitially) {
+  FindInProjectTask(@NotNull final FindModel findModel, @NotNull final Project project, @NotNull Set<? extends VirtualFile> filesToScanInitially) {
     myFindModel = findModel;
     myProject = project;
     myFilesToScanInitially = filesToScanInitially;
@@ -108,7 +108,7 @@ class FindInProjectTask {
     TooManyUsagesStatus.createFor(myProgress);
   }
 
-  public void findUsages(@NotNull FindUsagesProcessPresentation processPresentation, @NotNull Processor<UsageInfo> consumer) {
+  public void findUsages(@NotNull FindUsagesProcessPresentation processPresentation, @NotNull Processor<? super UsageInfo> consumer) {
     try {
       myProgress.setIndeterminate(true);
       myProgress.setText("Scanning indexed files...");
@@ -153,7 +153,7 @@ class FindInProjectTask {
     }
   }
 
-  private static void logStats(@NotNull Collection<VirtualFile> otherFiles, long time) {
+  private static void logStats(@NotNull Collection<? extends VirtualFile> otherFiles, long time) {
     Map<String, Long> extensionToCount = otherFiles.stream()
       .collect(Collectors.groupingBy(file -> StringUtil.notNullize(file.getExtension()).toLowerCase(Locale.ENGLISH), Collectors.counting()));
     String topExtensions = extensionToCount
@@ -170,7 +170,7 @@ class FindInProjectTask {
 
   private void searchInFiles(@NotNull Collection<VirtualFile> virtualFiles,
                              @NotNull FindUsagesProcessPresentation processPresentation,
-                             @NotNull final Processor<UsageInfo> consumer) {
+                             @NotNull final Processor<? super UsageInfo> consumer) {
     AtomicInteger occurrenceCount = new AtomicInteger();
     AtomicInteger processedFileCount = new AtomicInteger();
 
@@ -407,9 +407,7 @@ class FindInProjectTask {
 
       if (!keys.isEmpty()) {
         final List<VirtualFile> hits = new ArrayList<>();
-        ApplicationManager.getApplication().runReadAction(() -> {
-          FileBasedIndex.getInstance().getFilesWithKey(TrigramIndex.INDEX_ID, keys, Processors.cancelableCollectProcessor(hits), scope);
-        });
+        FileBasedIndex.getInstance().getFilesWithKey(TrigramIndex.INDEX_ID, keys, Processors.cancelableCollectProcessor(hits), scope);
 
         for (VirtualFile hit : hits) {
           if (myFileMask.value(hit)) {
index be01ff93a2fdc0ef3269140245e64c026e4d4c29..f22c61d2f7c6e2785f38e2b3515f475b1ed701dd 100644 (file)
@@ -209,7 +209,7 @@ public class FindInProjectUtil {
                                 @NotNull final Project project,
                                 @NotNull FindUsagesProcessPresentation processPresentation,
                                 @NotNull Set<VirtualFile> filesToStart,
-                                @NotNull final Processor<UsageInfo> consumer) {
+                                @NotNull final Processor<? super UsageInfo> consumer) {
     new FindInProjectTask(findModel, project, filesToStart).findUsages(processPresentation, consumer);
   }
 
@@ -217,7 +217,7 @@ public class FindInProjectUtil {
   static int processUsagesInFile(@NotNull final PsiFile psiFile,
                                  @NotNull final VirtualFile virtualFile,
                                  @NotNull final FindModel findModel,
-                                 @NotNull final Processor<UsageInfo> consumer) {
+                                 @NotNull final Processor<? super UsageInfo> consumer) {
     if (findModel.getStringToFind().isEmpty()) {
       if (!ReadAction.compute(() -> consumer.process(new UsageInfo(psiFile)))) {
         throw new ProcessCanceledException();
index 81773289e4909a5dc35ab2092ce11c18fadca35f..77a6a648632691466fac64e3baa2976cd4e106c3 100644 (file)
@@ -2,7 +2,6 @@
 package com.intellij.find.impl;
 
 import com.intellij.CommonBundle;
-import com.intellij.codeInsight.lookup.LookupElement;
 import com.intellij.find.*;
 import com.intellij.find.actions.ShowUsagesAction;
 import com.intellij.find.editorHeaderActions.ShowMoreOptions;
@@ -45,7 +44,6 @@ import com.intellij.openapi.wm.IdeFocusManager;
 import com.intellij.openapi.wm.WindowManager;
 import com.intellij.openapi.wm.impl.IdeFrameImpl;
 import com.intellij.pom.Navigatable;
-import com.intellij.psi.PsiElement;
 import com.intellij.psi.search.GlobalSearchScope;
 import com.intellij.psi.search.GlobalSearchScopeUtil;
 import com.intellij.ui.*;
@@ -85,10 +83,8 @@ public class FindPopupPanel extends JBPanel implements FindUI {
   private static final Logger LOG = Logger.getInstance(FindPopupPanel.class);
 
   private static final KeyStroke ENTER = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
-  private static final KeyStroke ENTER_WITH_MODIFIERS =
-    KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, SystemInfo.isMac ? InputEvent.META_DOWN_MASK : InputEvent.CTRL_DOWN_MASK);
-  private static final KeyStroke REPLACE_ALL =
-    KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, InputEvent.SHIFT_DOWN_MASK | InputEvent.ALT_MASK);
+  private static final KeyStroke ENTER_WITH_MODIFIERS = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, SystemInfo.isMac ? InputEvent.META_DOWN_MASK : InputEvent.CTRL_DOWN_MASK);
+  private static final KeyStroke REPLACE_ALL = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, InputEvent.SHIFT_DOWN_MASK | InputEvent.ALT_MASK);
 
   private static final String SERVICE_KEY = "find.popup";
   private static final String SPLITTER_SERVICE_KEY = "find.popup.splitter";
@@ -114,7 +110,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
   private StateRestoringCheckBox myCbRegularExpressions;
   private StateRestoringCheckBox myCbFileFilter;
   private ActionToolbarImpl myScopeSelectionToolbar;
-  private ComboBox myFileMaskField;
+  private ComboBox<String> myFileMaskField;
   private ActionButton myFilterContextButton;
   private ActionButton myTabResultsButton;
   private ActionButton myPinButton;
@@ -273,6 +269,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
     return !myScopeUI.hideAllPopups();
   }
 
+  @Override
   public void saveSettings() {
     DimensionService.getInstance().setSize(SERVICE_KEY, myBalloon.getSize(), myHelper.getProject() );
     DimensionService.getInstance().setLocation(SERVICE_KEY, myBalloon.getLocationOnScreen(), myHelper.getProject() );
@@ -341,8 +338,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
       }
     });
     myCbFileFilter.addItemListener(liveResultsPreviewUpdateListener);
-    myFileMaskField = new ComboBox() {
-
+    myFileMaskField = new ComboBox<String>() {
       @Override
       public Dimension getPreferredSize() {
         int width = 0;
@@ -375,12 +371,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
     };
     myFileMaskField.setEditable(true);
     myFileMaskField.setMaximumRowCount(8);
-    myFileMaskField.addActionListener(new ActionListener() {
-      @Override
-      public void actionPerformed(ActionEvent e) {
-        scheduleResultsUpdate();
-      }
-    });
+    myFileMaskField.addActionListener(__ -> scheduleResultsUpdate());
     Component editorComponent = myFileMaskField.getEditor().getEditorComponent();
     if (editorComponent instanceof EditorTextField) {
       final EditorTextField etf = (EditorTextField) editorComponent;
@@ -496,9 +487,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
     myReplaceSelectedButton = new JButton(FindBundle.message("find.popup.replace.selected.button", 0));
 
     myOkActionListener = __ -> doOK(true);
-    myReplaceAllButton.addActionListener(e -> {
-      doOK(false);
-    });
+    myReplaceAllButton.addActionListener(__ -> doOK(false));
     myReplaceSelectedButton.addActionListener(e -> {
       int rowToSelect = myResultsPreviewTable.getSelectionModel().getMinSelectionIndex();
       Map<Integer, Usage> usages = getSelectedUsages();
@@ -565,9 +554,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
       }
     }).registerCustomShortcutSet(new CustomShortcutSet(ENTER_WITH_MODIFIERS), this);
 
-    DumbAwareAction.create(e -> {
-      myReplaceAllButton.doClick();
-    }).registerCustomShortcutSet(new CustomShortcutSet(REPLACE_ALL), this);
+    DumbAwareAction.create(__ -> myReplaceAllButton.doClick()).registerCustomShortcutSet(new CustomShortcutSet(REPLACE_ALL), this);
     myReplaceAllButton.setToolTipText(KeymapUtil.getKeystrokeText(REPLACE_ALL));
     
     List<Shortcut> navigationKeyStrokes = ContainerUtil.newArrayList();
@@ -729,7 +716,7 @@ public class FindPopupPanel extends JBPanel implements FindUI {
     myOKHintLabel.setEnabled(false);
     Insets insets = myOKButton.getInsets();
     bottomPanel.add(myOKHintLabel);
-    String btnGapLeft = "gapleft " + Math.max(0, (JBUI.scale(12) - insets.left - insets.right));
+    String btnGapLeft = "gapleft " + Math.max(0, JBUI.scale(12) - insets.left - insets.right);
     bottomPanel.add(myOKButton, btnGapLeft);
     bottomPanel.add(myReplaceAllButton, btnGapLeft);
     bottomPanel.add(myReplaceSelectedButton, btnGapLeft);
@@ -744,10 +731,10 @@ public class FindPopupPanel extends JBPanel implements FindUI {
     myTitlePanel.add(myTitleLabel);
     myTitlePanel.add(myLoadingDecorator.getComponent(), "w 24, wmin 24");
     myTitlePanel.add(Box.createHorizontalGlue(), "growx, pushx");
-    int gap = 16;
     JPanel regexpPanel = new JPanel(new BorderLayout(JBUI.scale(4), 0));
     regexpPanel.add(myCbRegularExpressions, BorderLayout.CENTER);
     regexpPanel.add(RegExHelpPopup.createRegExLink("<html><body><b>?</b></body></html>", myCbRegularExpressions, LOG), BorderLayout.EAST);
+    int gap = 16;
     AnAction[] actions = {
       new DefaultCustomComponentAction(() -> myCbCaseSensitive),
       new DefaultCustomComponentAction(() -> JBUI.Borders.emptyLeft(gap).wrap(myCbPreserveCase)),
@@ -1496,30 +1483,4 @@ public class FindPopupPanel extends JBPanel implements FindUI {
       listPopup.showUnderneathOf(myFilterContextButton);
     }
   }
-
-  private static class MyLookupElement extends LookupElement {
-    private final String myValue;
-
-    MyLookupElement(String value) {
-      myValue = value;
-    }
-
-    @NotNull
-    @Override
-    public String getLookupString() {
-      return myValue;
-    }
-
-    @Nullable
-    @Override
-    public PsiElement getPsiElement() {
-      return null;
-    }
-
-    @Override
-    public boolean isValid() {
-      return true;
-    }
-  }
-
 }
index 91dd7b8dc5697d097e8d1bc6f5dfa65f6b9a3005..5811381e6f78f38ef49899d579d574c2fb30975b 100644 (file)
@@ -25,7 +25,7 @@ public class ScratchesSearchScope extends GlobalSearchScope {
 
   private final ScratchFileService myService;
 
-  public ScratchesSearchScope(@NotNull Project project, @NotNull ScratchFileService service) {
+  private ScratchesSearchScope(@NotNull Project project, @NotNull ScratchFileService service) {
     super(project);
     myService = service;
   }
@@ -48,11 +48,6 @@ public class ScratchesSearchScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return false;
   }
index 9df6a131364d2ef335610de907a200d14d6be62c..0c3a767e836ec6349aa783aac1c41563506ac749 100644 (file)
@@ -282,14 +282,7 @@ public abstract class AbstractTreeClassChooserDialog<T extends PsiNamedElement>
 
     myGotoByNamePanel.invoke(new MyCallback(), getModalityState(), false);
 
-    myTabbedPane.addChangeListener(
-      new ChangeListener() {
-        @Override
-        public void stateChanged(ChangeEvent e) {
-          handleSelectionChanged();
-        }
-      }
-    );
+    myTabbedPane.addChangeListener(__ -> handleSelectionChanged());
 
     return myTabbedPane.getComponent();
   }
index cf26b7ebeaa25baab864b7110be93c6cce5f48f2..687f67bd62b8f7d9c0646e8d1508595b5c9381d8 100644 (file)
@@ -30,11 +30,6 @@ public class MockGlobalSearchScope extends GlobalSearchScope {
   }
 
   @Override
-  public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
-    return 0;
-  }
-
-  @Override
   public boolean isSearchInModuleContent(@NotNull final Module aModule) {
     return true;
   }
index a66c20c22bfdb30f2e8249adf5752390d7c04e87..79fface1978ad6a0ac788f5c9eda083fbcb30021 100644 (file)
@@ -178,11 +178,6 @@ public class PredefinedSearchScopeProviderImpl extends PredefinedSearchScopeProv
               }
 
               @Override
-              public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-                return 0;
-              }
-
-              @Override
               public boolean isSearchInModuleContent(@NotNull Module aModule) {
                 return true;
               }
@@ -231,11 +226,6 @@ public class PredefinedSearchScopeProviderImpl extends PredefinedSearchScopeProv
           }
 
           @Override
-          public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
-            return 0;
-          }
-
-          @Override
           public boolean isSearchInModuleContent(@NotNull final Module aModule) {
             return true;
           }
@@ -253,7 +243,7 @@ public class PredefinedSearchScopeProviderImpl extends PredefinedSearchScopeProv
     return ContainerUtil.newArrayList(result);
   }
 
-  private static void addHierarchyScope(@NotNull Project project, Collection<SearchScope> result) {
+  private static void addHierarchyScope(@NotNull Project project, Collection<? super SearchScope> result) {
     final ToolWindow toolWindow = ToolWindowManager.getInstance(project).getToolWindow(ToolWindowId.HIERARCHY);
     if (toolWindow == null) {
       return;
@@ -287,7 +277,8 @@ public class PredefinedSearchScopeProviderImpl extends PredefinedSearchScopeProv
     return null;
   }
 
-  protected static Set<VirtualFile> collectFiles(Set<Usage> usages, boolean findFirst) {
+  @NotNull
+  protected static Set<VirtualFile> collectFiles(Set<? extends Usage> usages, boolean findFirst) {
     final Set<VirtualFile> files = new HashSet<>();
     for (Usage usage : usages) {
       if (usage instanceof PsiElementUsage) {
index 3a49e618f9e72200208d0ad3a0b7ba3749a2cadf..a2e947127fbacf934013dc4613585297c9eee97c 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.openapi.wm.IdeGlassPaneUtil;
 import com.intellij.ui.awt.RelativePoint;
 import com.intellij.util.ui.update.Activatable;
 import com.intellij.util.ui.update.UiNotifyConnector;
+import org.jetbrains.annotations.NotNull;
 
 import javax.swing.*;
 import java.awt.*;
@@ -58,7 +59,6 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
 
   /**
    *
-   * @param event
    * @return false if Settings -> Appearance -> Drag-n-Drop with ALT pressed only is selected but event doesn't have ALT modifier
    */
   public static boolean checkModifiers(InputEvent event) {
@@ -81,12 +81,7 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
       }
     });
 
-    Disposer.register(myParentDisposable, new Disposable() {
-      @Override
-      public void dispose() {
-        stop();
-      }
-    });
+    Disposer.register(myParentDisposable, () -> stop());
   }
 
   private void attach() {
@@ -98,12 +93,8 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
     myGlassPane.addMousePreprocessor(this, myParentDisposable);
     myGlassPane.addMouseMotionPreprocessor(this, myParentDisposable);
     KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(this);
-    Disposer.register(myParentDisposable, new Disposable() {
-      @Override
-      public void dispose() {
-        KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(MouseDragHelper.this);
-      }
-    });
+    Disposer.register(myParentDisposable,
+                      () -> KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(this));
   }
 
   public void stop() {
@@ -211,7 +202,8 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
 
       if (myDetachingMode) {
         processDragOut(e, draggedTo, (Point)myPressPointScreen.clone(), dragOutStarted);
-      } else {
+      }
+      else {
         processDrag(e, draggedTo, (Point)myPressPointScreen.clone());
       }
     }
@@ -237,10 +229,10 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
   protected void processDragCancel() {
   }
 
-  protected void processDragFinish(final MouseEvent event, boolean willDragOutStart) {
+  protected void processDragFinish(@NotNull MouseEvent event, boolean willDragOutStart) {
   }
 
-  protected void processDragOutFinish(final MouseEvent event) {
+  protected void processDragOutFinish(@NotNull MouseEvent event) {
   }
 
   protected void processDragOutCancel() {
@@ -250,13 +242,13 @@ public abstract class MouseDragHelper implements MouseListener, MouseMotionListe
     return myDragJustStarted;
   }
 
-  protected abstract void processDrag(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint);
+  protected abstract void processDrag(@NotNull MouseEvent event, @NotNull Point dragToScreenPoint, @NotNull Point startScreenPoint);
 
-  protected boolean isDragOut(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint) {
+  protected boolean isDragOut(@NotNull MouseEvent event, @NotNull Point dragToScreenPoint, @NotNull Point startScreenPoint) {
     return false;
   }
 
-  protected void processDragOut(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint, boolean justStarted) {
+  protected void processDragOut(@NotNull MouseEvent event, @NotNull Point dragToScreenPoint, @NotNull Point startScreenPoint, boolean justStarted) {
     event.consume();
   }
 
index 4d5ad49911e68fada6c40487444a1efdfbe7f1b2..d58155d565f3fd647e9f3710eb69925abf4d9186 100644 (file)
@@ -47,6 +47,7 @@ public interface TabbedContent extends Content {
    */
   void selectContent(int index);
 
+  @NotNull
   List<Pair<String, JComponent>> getTabs();
 
   default boolean hasMultipleTabs() {
index 5be0abb03d2f40fd0d0b12ce1ce486dc90fb6838..37a45d0d916402734135a6d8fcee8582b18cdccc 100644 (file)
@@ -33,6 +33,7 @@ import javax.swing.*;
 import java.awt.*;
 import java.awt.event.MouseEvent;
 import java.beans.PropertyChangeSupport;
+import java.lang.ref.Reference;
 import java.lang.ref.WeakReference;
 import java.util.List;
 import java.util.Map;
@@ -62,7 +63,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
   private String myPlace;
   private Object myObject;
   private JComponent mySideComponent;
-  private WeakReference<JComponent> myLastFocusOwner;
+  private Reference<JComponent> myLastFocusOwner;
 
 
   private ActionGroup myTabLabelActions;
@@ -106,7 +107,8 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     return myChangeSupport;
   }
 
-  public TabInfo setText(String text) {
+  @NotNull
+  public TabInfo setText(@NotNull String text) {
     List<SimpleTextAttributes> attributes = myText.getAttributes();
     TextAttributes textAttributes = attributes.size() == 1 ? attributes.get(0).toTextAttributes() : null;
     TextAttributes defaultAttributes = getDefaultAttributes().toTextAttributes();
@@ -137,13 +139,14 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     return this;
   }
 
-  public TabInfo append(String fragment, SimpleTextAttributes attributes) {
+  public TabInfo append(@NotNull String fragment, @NotNull SimpleTextAttributes attributes) {
     final String old = myText.toString();
     myText.append(fragment, attributes);
     myChangeSupport.firePropertyChange(TEXT, old, myText.toString());
     return this;
   }
 
+  @NotNull
   public TabInfo setIcon(Icon icon) {
     Icon old = myIcon;
     if (!IconDeferrer.getInstance().equalIcons(old, icon)) {
@@ -231,7 +234,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
   }
 
   public void setLastFocusOwner(final JComponent owner) {
-    myLastFocusOwner = new WeakReference<>(owner);
+    myLastFocusOwner = owner == null ? null : new WeakReference<>(owner);
   }
 
   public ActionGroup getTabLabelActions() {
@@ -242,7 +245,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     return myTabActionPlace;
   }
 
-  public TabInfo setTabLabelActions(final ActionGroup tabActions, String place) {
+  public TabInfo setTabLabelActions(final ActionGroup tabActions, @NotNull String place) {
     ActionGroup old = myTabLabelActions;
     myTabLabelActions = tabActions;
     myTabActionPlace = place;
@@ -280,6 +283,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     myBlinkCount = blinkCount;
   }
 
+  @Override
   public String toString() {
     return getText();
   }
@@ -351,6 +355,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     update();
   }
 
+  @NotNull
   public TabInfo setTooltipText(final String text) {
     String old = myTooltipText;
     if (!Comparing.equal(old, text)) {
@@ -364,6 +369,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     return myTooltipText;
   }
 
+  @NotNull
   public TabInfo setTabColor(Color color) {
     Color old = myTabColor;
     if (!Comparing.equal(color, old)) {
@@ -377,6 +383,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     return myTabColor;
   }
 
+  @NotNull
   public TabInfo setTestableUi(Queryable queryable) {
     myQueryable = queryable;
     return this;
@@ -389,6 +396,7 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
     }
   }
 
+  @NotNull
   public TabInfo setDragOutDelegate(DragOutDelegate delegate) {
     myDragOutDelegate = delegate;
     return this;
@@ -412,10 +420,9 @@ public final class TabInfo implements Queryable, PlaceProvider<String> {
   }
 
   public interface DragOutDelegate {
-
-    void dragOutStarted(MouseEvent mouseEvent, TabInfo info);
-    void processDragOut(MouseEvent event, TabInfo source);
-    void dragOutFinished(MouseEvent event, TabInfo source);
+    void dragOutStarted(@NotNull MouseEvent mouseEvent, @NotNull TabInfo info);
+    void processDragOut(@NotNull MouseEvent event, @NotNull TabInfo source);
+    void dragOutFinished(@NotNull MouseEvent event, TabInfo source);
     void dragOutCancelled(TabInfo source);
   }
 
index 70564745d6c8239d91b58cebaba3d552640d6f86..30b2740bc241fc91d4cca3e4e4468cec61e583e8 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.ui.awt.RelativePoint;
 import com.intellij.ui.tabs.JBTabsPosition;
 import com.intellij.ui.tabs.TabInfo;
 import com.intellij.ui.util.Axis;
+import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
 import javax.swing.*;
@@ -45,14 +46,14 @@ class DragHelper extends MouseDragHelper {
   private TabInfo myDragOutSource;
   private Reference<TabLabel> myPressedTabLabel;
 
-  public DragHelper(JBTabsImpl tabs) {
+  DragHelper(JBTabsImpl tabs) {
     super(tabs, tabs);
     myTabs = tabs;
   }
 
 
   @Override
-  protected boolean isDragOut(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint) {
+  protected boolean isDragOut(@NotNull MouseEvent event, @NotNull Point dragToScreenPoint, @NotNull Point startScreenPoint) {
     if (myDragSource == null || !myDragSource.canBeDraggedOut()) return false;
 
     TabLabel label = myTabs.myInfo2Label.get(myDragSource);
@@ -65,7 +66,7 @@ class DragHelper extends MouseDragHelper {
   }
 
   @Override
-  protected void processDragOut(MouseEvent event, Point dragToScreenPoint, Point startScreenPoint, boolean justStarted) {
+  protected void processDragOut(@NotNull MouseEvent event, @NotNull Point dragToScreenPoint, @NotNull Point startScreenPoint, boolean justStarted) {
     TabInfo.DragOutDelegate delegate = myDragOutSource.getDragOutDelegate();
     if (justStarted) {
       delegate.dragOutStarted(event, myDragOutSource);
@@ -76,7 +77,7 @@ class DragHelper extends MouseDragHelper {
   }
 
   @Override
-  protected void processDragOutFinish(MouseEvent event) {
+  protected void processDragOutFinish(@NotNull MouseEvent event) {
     super.processDragOutFinish(event);
 
     myDragOutSource.getDragOutDelegate().dragOutFinished(event, myDragOutSource);
@@ -95,7 +96,8 @@ class DragHelper extends MouseDragHelper {
     myPressedTabLabel = label == null ? null : new WeakReference<>(label);
   }
 
-  protected void processDrag(MouseEvent event, Point targetScreenPoint, Point startPointScreen) {
+  @Override
+  protected void processDrag(@NotNull MouseEvent event, @NotNull Point targetScreenPoint, @NotNull Point startPointScreen) {
     if (!myTabs.isTabDraggingEnabled() || !isDragSource(event) || !MouseDragHelper.checkModifiers(event)) return;
 
     SwingUtilities.convertPointFromScreen(startPointScreen, myTabs);
@@ -236,7 +238,7 @@ class DragHelper extends MouseDragHelper {
   }
 
   @Override
-  protected void processDragFinish(MouseEvent event, boolean willDragOutStart) {
+  protected void processDragFinish(@NotNull MouseEvent event, boolean willDragOutStart) {
     super.processDragFinish(event, willDragOutStart);
 
     endDrag(willDragOutStart);
index 6b33f3d50c0d52af2a4420e9f279b19b7d912b0d..ed3d8900927e590b3f913ce55494fa59c55d0a9b 100644 (file)
@@ -567,7 +567,7 @@ public final class EditorTabbedContainer implements Disposable, CloseAction.Clos
     private DragSession mySession;
 
     @Override
-    public void dragOutStarted(MouseEvent mouseEvent, TabInfo info) {
+    public void dragOutStarted(@NotNull MouseEvent mouseEvent, @NotNull TabInfo info) {
       final TabInfo previousSelection = info.getPreviousSelection();
       final Image img = JBTabsImpl.getComponentImage(info);
       info.setHidden(true);
@@ -586,12 +586,12 @@ public final class EditorTabbedContainer implements Disposable, CloseAction.Clos
     }
 
     @Override
-    public void processDragOut(MouseEvent event, TabInfo source) {
+    public void processDragOut(@NotNull MouseEvent event, @NotNull TabInfo source) {
       mySession.process(event);
     }
 
     @Override
-    public void dragOutFinished(MouseEvent event, TabInfo source) {
+    public void dragOutFinished(@NotNull MouseEvent event, TabInfo source) {
       boolean copy = UIUtil.isControlKeyDown(event) || mySession.getResponse(event) == DockContainer.ContentResponse.ACCEPT_COPY;
       if (!copy) {
         myFile.putUserData(FileEditorManagerImpl.CLOSING_TO_REOPEN, Boolean.TRUE);
index 87f4ec4f6c1d2dba7af52b353251b15142d06fba..5c7e9141b21dc092a5947f9ca9d99d45d86145bb 100644 (file)
@@ -19,7 +19,7 @@ import java.awt.*;
 import java.awt.event.MouseListener;
 import java.util.concurrent.CopyOnWriteArraySet;
 
-public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
+public class JBTabsPaneImpl implements TabbedPane {
   private final JBTabsImpl myTabs;
   private final CopyOnWriteArraySet<ChangeListener> myListeners = new CopyOnWriteArraySet<>();
 
@@ -63,44 +63,51 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     }
   }
 
+  @Override
   public JComponent getComponent() {
     return myTabs.getComponent();
   }
 
-  public void putClientProperty(Object key, Object value) {
+  @Override
+  public void putClientProperty(@NotNull Object key, Object value) {
     myTabs.getComponent().putClientProperty(key, value);
   }
 
-  public void setKeyboardNavigation(PrevNextActionsDescriptor installKeyboardNavigation) {
+  @Override
+  public void setKeyboardNavigation(@NotNull PrevNextActionsDescriptor installKeyboardNavigation) {
     myTabs.setNavigationActionBinding(installKeyboardNavigation.getPrevActionId(), installKeyboardNavigation.getNextActionId());
   }
 
-  public void addChangeListener(ChangeListener listener) {
+  @Override
+  public void addChangeListener(@NotNull ChangeListener listener) {
     myListeners.add(listener);
   }
 
+  @Override
   public int getTabCount() {
     return myTabs.getTabCount();
   }
 
-  public void insertTab(String title, Icon icon, Component c, String tip, int index) {
+  @Override
+  public void insertTab(@NotNull String title, Icon icon, @NotNull Component c, String tip, int index) {
     assert c instanceof JComponent;
     myTabs.addTab(new TabInfo((JComponent)c).setText(title).setTooltipText(tip).setIcon(icon), index);
   }
 
+  @Override
   public void setTabPlacement(int tabPlacement) {
     final JBTabsPresentation presentation = myTabs.getPresentation();
     switch (tabPlacement) {
-      case TOP:
+      case SwingConstants.TOP:
         presentation.setTabsPosition(JBTabsPosition.top);
         break;
-      case BOTTOM:
+      case SwingConstants.BOTTOM:
         presentation.setTabsPosition(JBTabsPosition.bottom);
         break;
-      case LEFT:
+      case SwingConstants.LEFT:
         presentation.setTabsPosition(JBTabsPosition.left);
         break;
-      case RIGHT:
+      case SwingConstants.RIGHT:
         presentation.setTabsPosition(JBTabsPosition.right);
         break;
       default:
@@ -108,19 +115,23 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     }
   }
 
-  public void addMouseListener(MouseListener listener) {
+  @Override
+  public void addMouseListener(@NotNull MouseListener listener) {
     myTabs.getComponent().addMouseListener(listener);
   }
 
+  @Override
   public int getSelectedIndex() {
     return myTabs.getIndexOf(myTabs.getSelectedInfo());
   }
 
+  @Override
   public Component getSelectedComponent() {
     final TabInfo selected = myTabs.getSelectedInfo();
     return selected != null ? selected.getComponent() : null;
   }
 
+  @Override
   public void setSelectedIndex(int index) {
     myTabs.select(getTabAt(index), false);
   }
@@ -131,6 +142,7 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     return myTabs.getTabLabel(tabInfo);
   }
 
+  @Override
   public void removeTabAt(int index) {
     myTabs.removeTab(getTabAt(index));
   }
@@ -146,46 +158,57 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     }
   }
 
+  @Override
   public void revalidate() {
     myTabs.getComponent().revalidate();
   }
 
+  @Override
   public Color getForegroundAt(int index) {
     return getTabAt(index).getDefaultForeground();
   }
 
+  @Override
   public void setForegroundAt(int index, Color color) {
     getTabAt(index).setDefaultForeground(color);
   }
 
+  @Override
   public Component getComponentAt(int i) {
     return getTabAt(i).getComponent();
   }
 
-  public void setTitleAt(int index, String title) {
+  @Override
+  public void setTitleAt(int index, @NotNull String title) {
     getTabAt(index).setText(title);
   }
 
+  @Override
   public void setToolTipTextAt(int index, String toolTipText) {
     getTabAt(index).setTooltipText(toolTipText);
   }
 
+  @Override
   public void setComponentAt(int index, Component c) {
     getTabAt(index).setComponent(c);
   }
 
+  @Override
   public void setIconAt(int index, Icon icon) {
     getTabAt(index).setIcon(icon);
   }
 
+  @Override
   public void setEnabledAt(int index, boolean enabled) {
     getTabAt(index).setEnabled(enabled);
   }
 
+  @Override
   public int getTabLayoutPolicy() {
     return myTabs.getPresentation().isSingleRow() ? JTabbedPane.SCROLL_TAB_LAYOUT : JTabbedPane.WRAP_TAB_LAYOUT;
   }
 
+  @Override
   public void setTabLayoutPolicy(int policy) {
     switch (policy) {
       case JTabbedPane.SCROLL_TAB_LAYOUT:
@@ -199,21 +222,26 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     }
   }
 
+  @Override
   public void scrollTabToVisible(int index) {
   }
 
+  @Override
   public String getTitleAt(int i) {
     return getTabAt(i).getText();
   }
 
+  @Override
   public void removeAll() {
     myTabs.removeAllTabs();
   }
 
+  @Override
   public void updateUI() {
     myTabs.getComponent().updateUI();
   }
 
+  @Override
   public void removeChangeListener(ChangeListener listener) {
     myListeners.remove(listener);
   }
@@ -222,6 +250,7 @@ public class JBTabsPaneImpl implements TabbedPane, SwingConstants {
     return myTabs;
   }
 
+  @Override
   public boolean isDisposed() {
     return myTabs.isDisposed();
   }
index 9ea5ae75e8329f1220a9f874681ba3a89687bd54..51f2d4799ee697508907011a3a02357198d486c3 100644 (file)
  */
 package com.intellij.ui;
 
+import org.jetbrains.annotations.NotNull;
+
 import javax.swing.*;
 import javax.swing.event.ChangeListener;
-import java.awt.event.MouseListener;
 import java.awt.*;
+import java.awt.event.MouseListener;
 
 public interface TabbedPane {
   JComponent getComponent();
 
-  void putClientProperty(Object key, Object value);
+  void putClientProperty(@NotNull Object key, Object value);
 
-  void setKeyboardNavigation(PrevNextActionsDescriptor installKeyboardNavigation);
+  void setKeyboardNavigation(@NotNull PrevNextActionsDescriptor installKeyboardNavigation);
 
-  void addChangeListener(ChangeListener listener);
+  void addChangeListener(@NotNull ChangeListener listener);
 
   int getTabCount();
 
-  void insertTab(String title, Icon icon, Component c, String tip, int index);
+  void insertTab(@NotNull String title, Icon icon, @NotNull Component c, String tip, int index);
 
   void setTabPlacement(int tabPlacement);
 
-  void addMouseListener(MouseListener listener);
+  void addMouseListener(@NotNull MouseListener listener);
 
   int getSelectedIndex();
 
@@ -55,7 +57,7 @@ public interface TabbedPane {
 
   Component getTabComponentAt(int index);
 
-  void setTitleAt(int index, String title);
+  void setTitleAt(int index, @NotNull String title);
 
   void setToolTipTextAt(int index, String toolTipText);
 
index 11fba15033f0d6d5814dd4c29f8ab4737ec0fce5..96e862b4fd661e2d3c7ed46d8907baa1532a9760 100644 (file)
@@ -24,6 +24,7 @@ import com.intellij.openapi.util.text.StringUtil;
 import com.intellij.ui.components.JBTabbedPane;
 import org.intellij.lang.annotations.JdkConstants;
 import org.jetbrains.annotations.NonNls;
+import org.jetbrains.annotations.NotNull;
 
 import javax.swing.*;
 import javax.swing.event.ChangeEvent;
@@ -44,9 +45,9 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
   private static final Logger LOG = Logger.getInstance("#com.intellij.ui.TabbedPaneImpl");
 
   private ScrollableTabSupport myScrollableTabSupport;
-  private AnAction myNextTabAction = null;
-  private AnAction myPreviousTabAction = null;
-  public PrevNextActionsDescriptor myInstallKeyboardNavigation = null;
+  private AnAction myNextTabAction;
+  private AnAction myPreviousTabAction;
+  private PrevNextActionsDescriptor myInstallKeyboardNavigation;
 
   public TabbedPaneImpl(@JdkConstants.TabPlacement int tabPlacement) {
     super(tabPlacement);
@@ -62,7 +63,7 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
   }
 
   @Override
-  public void setKeyboardNavigation(PrevNextActionsDescriptor installKeyboardNavigation) {
+  public void setKeyboardNavigation(@NotNull PrevNextActionsDescriptor installKeyboardNavigation) {
     myInstallKeyboardNavigation = installKeyboardNavigation;
   }
 
@@ -87,7 +88,7 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
     }
   }
 
-  @SuppressWarnings({"NonStaticInitializer"})
+  @SuppressWarnings("NonStaticInitializer")
   private void installKeyboardNavigation(final PrevNextActionsDescriptor installKeyboardNavigation){
     myNextTabAction = new AnAction() {
       {
@@ -141,11 +142,7 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
   @Override
   public void setUI(final TabbedPaneUI ui){
     super.setUI(ui);
-    if(ui instanceof BasicTabbedPaneUI){
-      myScrollableTabSupport=new ScrollableTabSupport((BasicTabbedPaneUI)ui);
-    }else{
-      myScrollableTabSupport=null;
-    }
+    myScrollableTabSupport = ui instanceof BasicTabbedPaneUI ? new ScrollableTabSupport((BasicTabbedPaneUI)ui) : null;
   }
 
   /**
@@ -281,18 +278,18 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
    */
   private final class ScrollableTabSupport{
     private final BasicTabbedPaneUI myUI;
-    @NonNls public static final String TAB_SCROLLER_NAME = "tabScroller";
-    @NonNls public static final String LEADING_TAB_INDEX_NAME = "leadingTabIndex";
-    @NonNls public static final String SET_LEADING_TAB_INDEX_METHOD = "setLeadingTabIndex";
+    @NonNls static final String TAB_SCROLLER_NAME = "tabScroller";
+    @NonNls static final String LEADING_TAB_INDEX_NAME = "leadingTabIndex";
+    @NonNls static final String SET_LEADING_TAB_INDEX_METHOD = "setLeadingTabIndex";
 
-    public ScrollableTabSupport(final BasicTabbedPaneUI ui){
+    ScrollableTabSupport(final BasicTabbedPaneUI ui){
       myUI=ui;
     }
 
     /**
      * @return value of {@code leadingTabIndex} field of BasicTabbedPaneUI.ScrollableTabSupport class.
      */
-    public int getLeadingTabIndex() {
+    int getLeadingTabIndex() {
       try {
         final Field tabScrollerField = BasicTabbedPaneUI.class.getDeclaredField(TAB_SCROLLER_NAME);
         tabScrollerField.setAccessible(true);
@@ -308,7 +305,7 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
       }
     }
 
-    public void setLeadingTabIndex(final int leadingIndex) {
+    void setLeadingTabIndex(final int leadingIndex) {
       try {
         final Field tabScrollerField = BasicTabbedPaneUI.class.getDeclaredField(TAB_SCROLLER_NAME);
         tabScrollerField.setAccessible(true);
@@ -326,7 +323,7 @@ public class TabbedPaneImpl extends JBTabbedPane implements TabbedPane {
           throw new IllegalStateException("method setLeadingTabIndex not found");
         }
         setLeadingIndexMethod.setAccessible(true);
-        setLeadingIndexMethod.invoke(tabScrollerValue, Integer.valueOf(getTabPlacement()), Integer.valueOf(leadingIndex));
+        setLeadingIndexMethod.invoke(tabScrollerValue, getTabPlacement(), leadingIndex);
       }
       catch (Exception exc) {
         final String writer = StringUtil.getThrowableText(exc);
index 343caa8ce7b00ccc7ef7f99b55f97fa51d4e0406..09e19d9eaa763493568366b9913daa7e5db01d4d 100644 (file)
@@ -38,7 +38,7 @@ import java.awt.event.MouseListener;
  */
 public class TabbedPaneWrapper  {
   protected TabbedPane myTabbedPane;
-  protected JComponent myTabbedPaneHolder;
+  private JComponent myTabbedPaneHolder;
 
   private TabFactory myFactory;
 
@@ -59,18 +59,15 @@ public class TabbedPaneWrapper  {
    * {@code SwingConstants.LEFT}, {@code SwingConstants.BOTTOM} or
    * {@code SwingConstants.RIGHT}.
    */
-  public TabbedPaneWrapper(int tabPlacement, PrevNextActionsDescriptor installKeyboardNavigation, @NotNull Disposable parentDisposable) {
-    final TabFactory factory;
-    if (SwingConstants.BOTTOM == tabPlacement || SwingConstants.TOP == tabPlacement) {
-      factory = new JBTabsFactory(this, null, parentDisposable);
-    } else {
-      factory = new JTabbedPaneFactory(this);
-    }
+  public TabbedPaneWrapper(int tabPlacement, @NotNull PrevNextActionsDescriptor installKeyboardNavigation, @NotNull Disposable parentDisposable) {
+    TabFactory factory = SwingConstants.BOTTOM == tabPlacement || SwingConstants.TOP == tabPlacement
+                         ? new JBTabsFactory(this, null, parentDisposable)
+                         : new JTabbedPaneFactory(this);
 
     init(tabPlacement, installKeyboardNavigation, factory);
   }
 
-  void init(int tabPlacement, PrevNextActionsDescriptor installKeyboardNavigation, TabFactory tabbedPaneFactory) {
+  void init(int tabPlacement, @NotNull PrevNextActionsDescriptor installKeyboardNavigation, @NotNull TabFactory tabbedPaneFactory) {
     myFactory = tabbedPaneFactory;
 
     myTabbedPane = createTabbedPane(tabPlacement);
@@ -96,7 +93,7 @@ public class TabbedPaneWrapper  {
     }
   }
 
-  public final void addChangeListener(final ChangeListener listener){
+  public final void addChangeListener(@NotNull ChangeListener listener){
     assertIsDispatchThread();
     myTabbedPane.addChangeListener(listener);
   }
@@ -116,7 +113,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#addTab(java.lang.String, javax.swing.Icon, java.awt.Component, java.lang.String)
+   * @see JTabbedPane#addTab(String, Icon, Component, String)
    */
   public final synchronized void addTab(final String title, final Icon icon, final JComponent component, final String tip) {
     insertTab(title, icon, component, tip, myTabbedPane.getTabCount());
@@ -130,7 +127,7 @@ public class TabbedPaneWrapper  {
     myTabbedPane.insertTab(title, icon, createTabWrapper(component), tip, index);
   }
 
-  protected TabWrapper createTabWrapper(JComponent component) {
+  private TabWrapper createTabWrapper(JComponent component) {
     return myFactory.createTabWrapper(component);
   }
 
@@ -139,7 +136,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#setTabPlacement
+   * @see JTabbedPane#setTabPlacement
    */
   public final void setTabPlacement(final int tabPlacement) {
     assertIsDispatchThread();
@@ -156,7 +153,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#getSelectedComponent()
+   * @see JTabbedPane#getSelectedComponent()
    */
   public final synchronized JComponent getSelectedComponent() {
     // Workaround for JDK 6 bug
@@ -174,9 +171,8 @@ public class TabbedPaneWrapper  {
     final boolean hadFocus = IJSwingUtilities.hasFocus2(myTabbedPaneHolder);
     myTabbedPane.setSelectedIndex(index);
     if (hadFocus && requestFocus) {
-      IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> {
-        IdeFocusManager.getGlobalInstance().requestFocus(myTabbedPaneHolder, true);
-      });
+      IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() ->
+              IdeFocusManager.getGlobalInstance().requestFocus(myTabbedPaneHolder, true));
     }
   }
 
@@ -202,9 +198,8 @@ public class TabbedPaneWrapper  {
         myTabbedPane.revalidate();
       }
       if (hadFocus) {
-        IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> {
-          IdeFocusManager.getGlobalInstance().requestFocus(myTabbedPaneHolder, true);
-        });
+        IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() ->
+          IdeFocusManager.getGlobalInstance().requestFocus(myTabbedPaneHolder, true));
       }
     }
     finally {
@@ -222,7 +217,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#setForegroundAt(int, java.awt.Color)
+   * @see JTabbedPane#setForegroundAt(int, Color)
    */
   public final void setForegroundAt(final int index,final Color color){
     assertIsDispatchThread();
@@ -233,7 +228,7 @@ public class TabbedPaneWrapper  {
     return myTabbedPane.getTabComponentAt(index);
   }
   /**
-   * @see javax.swing.JTabbedPane#setComponentAt(int, java.awt.Component)
+   * @see JTabbedPane#setComponentAt(int, Component)
    */
   public final synchronized JComponent getComponentAt(final int i) {
     return getWrapperAt(i).getComponent();
@@ -243,7 +238,7 @@ public class TabbedPaneWrapper  {
     return (TabWrapper)myTabbedPane.getComponentAt(i);
   }
 
-  public final void setTitleAt(final int index, final String title) {
+  public final void setTitleAt(final int index, @NotNull String title) {
     assertIsDispatchThread();
     myTabbedPane.setTitleAt(index, title);
   }
@@ -254,7 +249,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#setComponentAt(int, java.awt.Component)
+   * @see JTabbedPane#setComponentAt(int, Component)
    */
   public final synchronized void setComponentAt(final int index, final JComponent component) {
     assertIsDispatchThread();
@@ -262,7 +257,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#setIconAt(int, javax.swing.Icon)
+   * @see JTabbedPane#setIconAt(int, Icon)
    */
   public final void setIconAt(final int index, final Icon icon) {
     assertIsDispatchThread();
@@ -275,7 +270,7 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#indexOfComponent(java.awt.Component)
+   * @see JTabbedPane#indexOfComponent(Component)
    */
   public final synchronized int indexOfComponent(final JComponent component) {
     for (int i=0; i < myTabbedPane.getTabCount(); i++) {
@@ -288,14 +283,14 @@ public class TabbedPaneWrapper  {
   }
 
   /**
-   * @see javax.swing.JTabbedPane#getTabLayoutPolicy
+   * @see JTabbedPane#getTabLayoutPolicy
    */
   public final synchronized int getTabLayoutPolicy(){
     return myTabbedPane.getTabLayoutPolicy();
   }
 
   /**
-   * @see javax.swing.JTabbedPane#setTabLayoutPolicy
+   * @see JTabbedPane#setTabLayoutPolicy
    */
   public final synchronized void setTabLayoutPolicy(final int policy){
     myTabbedPane.setTabLayoutPolicy(policy);
@@ -349,7 +344,7 @@ public class TabbedPaneWrapper  {
 
     boolean myCustomFocus = true;
 
-    public TabWrapper(@NotNull final JComponent component) {
+    TabWrapper(@NotNull final JComponent component) {
       super(new BorderLayout());
       myComponent = component;
       add(component, BorderLayout.CENTER);
@@ -358,12 +353,12 @@ public class TabbedPaneWrapper  {
     /*
      * Make possible to search down for DataProviders
      */
+    @Override
     public Object getData(final String dataId) {
       if(myComponent instanceof DataProvider){
         return ((DataProvider)myComponent).getData(dataId);
-      } else {
-        return null;
       }
+      return null;
     }
 
     public JComponent getComponent() {
@@ -380,32 +375,32 @@ public class TabbedPaneWrapper  {
       }
     }
 
+    @Override
     public boolean requestDefaultFocus() {
       if (!myCustomFocus) return super.requestDefaultFocus();
       if (myComponent == null) return false; // Just in case someone requests the focus when we're already removed from the Swing tree.
       final JComponent preferredFocusedComponent = IdeFocusTraversalPolicy.getPreferredFocusedComponent(myComponent);
       if (preferredFocusedComponent != null) {
         if (!preferredFocusedComponent.requestFocusInWindow()) {
-          IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> {
-            IdeFocusManager.getGlobalInstance().requestFocus(preferredFocusedComponent, true);
-          });
+          IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() ->
+            IdeFocusManager.getGlobalInstance().requestFocus(preferredFocusedComponent, true));
         }
         return true;
-      } else {
-        return myComponent.requestDefaultFocus();
       }
+      return myComponent.requestDefaultFocus();
     }
 
+    @Override
     public void requestFocus() {
       if (!myCustomFocus) {
-        IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> {
-          super.requestFocus();
-        });
-      } else {
+        IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> super.requestFocus());
+      }
+      else {
         requestDefaultFocus();
       }
     }
 
+    @Override
     public boolean requestFocusInWindow() {
       if (!myCustomFocus) return super.requestFocusInWindow();
       return requestDefaultFocus();
@@ -418,13 +413,10 @@ public class TabbedPaneWrapper  {
       return false;
     }
 
+    @Override
     public final Component getDefaultComponentImpl(final Container focusCycleRoot) {
       final JComponent component=getSelectedComponent();
-      if(component!=null){
-        return IdeFocusTraversalPolicy.getPreferredFocusedComponent(component, this);
-      }else{
-        return null;
-      }
+      return component == null ? null : IdeFocusTraversalPolicy.getPreferredFocusedComponent(component, this);
     }
   }
 
@@ -437,28 +429,30 @@ public class TabbedPaneWrapper  {
       myWrapper = wrapper;
     }
 
+    @Override
     public boolean requestDefaultFocus() {
       final JComponent preferredFocusedComponent = IdeFocusTraversalPolicy.getPreferredFocusedComponent(myWrapper.myTabbedPane.getComponent());
       if (preferredFocusedComponent != null) {
         if (!preferredFocusedComponent.requestFocusInWindow()) {
-          IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() -> {
-            IdeFocusManager.getGlobalInstance().requestFocus(preferredFocusedComponent, true);
-          });
+          IdeFocusManager.getGlobalInstance().doWhenFocusSettlesDown(() ->
+            IdeFocusManager.getGlobalInstance().requestFocus(preferredFocusedComponent, true));
         }
         return true;
-      } else {
-        return super.requestDefaultFocus();
       }
+      return super.requestDefaultFocus();
     }
 
+    @Override
     public final void requestFocus() {
       requestDefaultFocus();
     }
 
+    @Override
     public final boolean requestFocusInWindow() {
       return requestDefaultFocus();
     }
 
+    @Override
     public void updateUI() {
       super.updateUI();
       if (myWrapper != null) {
@@ -476,9 +470,12 @@ public class TabbedPaneWrapper  {
   }
 
   private interface TabFactory {
+    @NotNull
     TabbedPane createTabbedPane(int tabPlacement);
+    @NotNull
     TabbedPaneHolder createTabbedPaneHolder();
-    TabWrapper createTabWrapper(JComponent component);
+    @NotNull
+    TabWrapper createTabWrapper(@NotNull JComponent component);
   }
 
   private static class JTabbedPaneFactory implements TabFactory {
@@ -488,15 +485,21 @@ public class TabbedPaneWrapper  {
       myWrapper = wrapper;
     }
 
+    @NotNull
+    @Override
     public TabbedPane createTabbedPane(int tabPlacement) {
       return new TabbedPaneImpl(tabPlacement);
     }
 
+    @NotNull
+    @Override
     public TabbedPaneHolder createTabbedPaneHolder() {
       return new TabbedPaneHolder(myWrapper);
     }
 
-    public TabWrapper createTabWrapper(JComponent component) {
+    @NotNull
+    @Override
+    public TabWrapper createTabWrapper(@NotNull JComponent component) {
       return new TabWrapper(component);
     }
   }
@@ -513,10 +516,14 @@ public class TabbedPaneWrapper  {
       myParent = parent;
     }
 
+    @NotNull
+    @Override
     public TabbedPane createTabbedPane(int tabPlacement) {
       return new JBTabsPaneImpl(myProject, tabPlacement, myParent);
     }
 
+    @NotNull
+    @Override
     public TabbedPaneHolder createTabbedPaneHolder() {
       return new TabbedPaneHolder(myWrapper) {
         @Override
@@ -528,7 +535,9 @@ public class TabbedPaneWrapper  {
       };
     }
 
-    public TabWrapper createTabWrapper(JComponent component) {
+    @NotNull
+    @Override
+    public TabWrapper createTabWrapper(@NotNull JComponent component) {
       final TabWrapper tabWrapper = new TabWrapper(component);
       tabWrapper.myCustomFocus = false;
       return tabWrapper;
index 852afefcf1a2d622010d091bb4e9a04f56c3a82b..8380f0cd4d5c86bab737140714e6b3e9491d2ca4 100644 (file)
@@ -28,6 +28,7 @@ import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 import javax.swing.plaf.TabbedPaneUI;
 import java.awt.*;
+import java.awt.event.InputEvent;
 import java.awt.event.MouseEvent;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
@@ -48,11 +49,11 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
    * Creates {@code TabbedPaneContentUI} with bottom tab placement.
    */
   public TabbedPaneContentUI() {
-    this(JTabbedPane.BOTTOM);
+    this(SwingConstants.BOTTOM);
   }
 
   /**
-   * Creates {@code TabbedPaneContentUI} with cpecified tab placement.
+   * Creates {@code TabbedPaneContentUI} with specified tab placement.
    *
    * @param tabPlacement constant which defines where the tabs are located.
    *                     Acceptable values are {@code javax.swing.JTabbedPane#TOP},
@@ -63,10 +64,12 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
     myTabbedPaneWrapper = new MyTabbedPaneWrapper(tabPlacement);
   }
 
+  @Override
   public JComponent getComponent() {
     return myTabbedPaneWrapper.getComponent();
   }
 
+  @Override
   public void setManager(@NotNull ContentManager manager) {
     if (myManager != null) {
       throw new IllegalStateException();
@@ -75,6 +78,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
     myManager.addContentManagerListener(new MyContentManagerListener());
   }
 
+  @Override
   public void propertyChange(PropertyChangeEvent e) {
     if (Content.PROP_DISPLAY_NAME.equals(e.getPropertyName())) {
       Content content = (Content)e.getSource();
@@ -120,20 +124,22 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
 
 
   private class MyTabbedPaneWrapper extends TabbedPaneWrapper.AsJTabbedPane {
-    public MyTabbedPaneWrapper(int tabPlacement) {
+    MyTabbedPaneWrapper(int tabPlacement) {
       super(tabPlacement);
     }
 
+    @Override
     protected TabbedPane createTabbedPane(int tabPlacement) {
       return new MyTabbedPane(tabPlacement);
     }
 
+    @Override
     protected TabbedPaneHolder createTabbedPaneHolder() {
       return new MyTabbedPaneHolder(this);
     }
 
     private class MyTabbedPane extends TabbedPaneImpl {
-      public MyTabbedPane(int tabPlacement) {
+      MyTabbedPane(int tabPlacement) {
         super(tabPlacement);
         addMouseListener(new MyPopupHandler());
         enableEvents(AWTEvent.MOUSE_EVENT_MASK);
@@ -159,13 +165,14 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
         menuSelectionManager.clearSelectedPath();
       }
 
+      @Override
       protected void processMouseEvent(MouseEvent e) {
         if (e.isPopupTrigger()) { // Popup doesn't activate clicked tab.
           showPopup(e.getX(), e.getY());
           return;
         }
 
-        if (!e.isShiftDown() && (MouseEvent.BUTTON1_MASK & e.getModifiers()) > 0) { // RightClick without Shift modifiers just select tab
+        if (!e.isShiftDown() && (InputEvent.BUTTON1_MASK & e.getModifiers()) > 0) { // RightClick without Shift modifiers just select tab
           if (MouseEvent.MOUSE_RELEASED == e.getID()) {
             TabbedPaneUI ui = getUI();
             int index = ui.tabForCoordinate(this, e.getX(), e.getY());
@@ -175,30 +182,32 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
             hideMenu();
           }
         }
-        else if (e.isShiftDown() && (MouseEvent.BUTTON1_MASK & e.getModifiers()) > 0) { // Shift+LeftClick closes the tab
+        else if (e.isShiftDown() && (InputEvent.BUTTON1_MASK & e.getModifiers()) > 0) { // Shift+LeftClick closes the tab
           if (MouseEvent.MOUSE_RELEASED == e.getID()) {
             closeTabAt(e.getX(), e.getY());
             hideMenu();
           }
         }
-        else if ((MouseEvent.BUTTON2_MASK & e.getModifiers()) > 0) { // MouseWheelClick closes the tab
+        else if ((InputEvent.BUTTON2_MASK & e.getModifiers()) > 0) { // MouseWheelClick closes the tab
           if (MouseEvent.MOUSE_RELEASED == e.getID()) {
             closeTabAt(e.getX(), e.getY());
             hideMenu();
           }
         }
-        else if ((MouseEvent.BUTTON3_MASK & e.getModifiers()) > 0 && SystemInfo.isWindows) { // Right mouse button doesn't activate tab
+        else if ((InputEvent.BUTTON3_MASK & e.getModifiers()) > 0 && SystemInfo.isWindows) { // Right mouse button doesn't activate tab
         }
         else {
           super.processMouseEvent(e);
         }
       }
 
+      @Override
       protected ChangeListener createChangeListener() {
         return new MyModelListener();
       }
 
       private class MyModelListener extends ModelListener {
+        @Override
         public void stateChanged(ChangeEvent e) {
           Content content = getSelectedContent();
           if (content != null) {
@@ -210,7 +219,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
 
       /**
        * @return content at the specified location.  {@code x} and {@code y} are in
-       *         tabbed pane coordinate system. The method returns {@code null} if there is no contnt at the
+       *         tabbed pane coordinate system. The method returns {@code null} if there is no content at the
        *         specified location.
        */
       private Content getContentAt(int x, int y) {
@@ -223,6 +232,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
       }
 
       protected class MyPopupHandler extends PopupHandler {
+        @Override
         public void invokePopup(Component comp, int x, int y) {
           if (myManager.getContentCount() == 0) return;
           showPopup(x, y);
@@ -267,6 +277,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
         super(wrapper);
       }
 
+      @Override
       public Object getData(String dataId) {
         if (PlatformDataKeys.CONTENT_MANAGER.is(dataId)) {
           return myManager;
@@ -280,6 +291,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
   }
 
   private class MyContentManagerListener extends ContentManagerAdapter {
+    @Override
     public void contentAdded(ContentManagerEvent event) {
       Content content = event.getContent();
       myTabbedPaneWrapper.insertTab(content.getTabName(),
@@ -290,11 +302,13 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
       content.addPropertyChangeListener(TabbedPaneContentUI.this);
     }
 
+    @Override
     public void contentRemoved(ContentManagerEvent event) {
       event.getContent().removePropertyChangeListener(TabbedPaneContentUI.this);
       myTabbedPaneWrapper.removeTabAt(event.getIndex());
     }
 
+    @Override
     public void selectionChanged(ContentManagerEvent event) {
       int index = event.getIndex();
       if (index != -1 && event.getOperation() != ContentManagerEvent.ContentOperation.remove) {
@@ -303,21 +317,26 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
     }
   }
 
+  @Override
   public boolean isSingleSelection() {
     return true;
   }
 
+  @Override
   public boolean isToSelectAddedContent() {
     return false;
   }
 
+  @Override
   public boolean canBeEmptySelection() {
     return false;
   }
 
+  @Override
   public void beforeDispose() {
   }
 
+  @Override
   public boolean canChangeSelectionTo(@NotNull Content content, boolean implicit) {
     return true;
   }
@@ -346,6 +365,7 @@ public class TabbedPaneContentUI implements ContentUI, PropertyChangeListener {
     return "Select Next Tab";
   }
 
+  @Override
   public void dispose() {
   }
 }
index fcd2b57b4e8b4a42dc7339617d43dd6065750a06..28e4fd1dfa99218dd13898e4437e1ae1355f6537 100644 (file)
@@ -23,8 +23,6 @@ import java.beans.PropertyChangeListener;
 import java.beans.PropertyChangeSupport;
 
 public class ContentImpl extends UserDataHolderBase implements Content {
-  private static Icon ourEmptyPinIcon;
-
   private String myDisplayName;
   private String myDescription;
   private JComponent myComponent;
@@ -32,7 +30,7 @@ public class ContentImpl extends UserDataHolderBase implements Content {
   private final PropertyChangeSupport myChangeSupport = new PropertyChangeSupport(this);
   private ContentManager myManager;
   private boolean myIsLocked;
-  private boolean myPinnable = true;
+  private boolean myPinnable;
   private Icon myLayeredIcon = new LayeredIcon(2);
   private Disposable myDisposer;
   private boolean myShouldDisposeContent = true;
@@ -105,14 +103,18 @@ public class ContentImpl extends UserDataHolderBase implements Content {
     }
   }
 
-  @NotNull
-  private static Icon getEmptyPinIcon() {
-    if (ourEmptyPinIcon == null) {
+  private static class IconHolder {
+    private static final Icon ourEmptyPinIcon;
+    static {
       Icon icon = AllIcons.Nodes.PinToolWindow;
       int width = icon.getIconWidth();
       ourEmptyPinIcon = IconUtil.cropIcon(icon, new Rectangle(width / 2, 0, width - width / 2, icon.getIconHeight()));
     }
-    return ourEmptyPinIcon;
+  }
+
+  @NotNull
+  private static Icon getEmptyPinIcon() {
+    return IconHolder.ourEmptyPinIcon;
   }
 
   @Override
index 8e8910480bd63d7b6f3148fea20e14f12fb48dc7..015f7d4a57bcc8176fbe23a6cdacbd3ce12c7ed4 100644 (file)
@@ -33,10 +33,11 @@ import java.util.List;
  * @author Konstantin Bulenkov
  */
 public class TabbedContentImpl extends ContentImpl implements TabbedContent {
-  private final List<Pair<String, JComponent>> myTabs = new ArrayList<Pair<String, JComponent>>();
+  private final List<Pair<String, JComponent>> myTabs = new ArrayList<>();
+  @NotNull
   private String myPrefix;
 
-  public TabbedContentImpl(JComponent component, String displayName, boolean isPinnable, String titlePrefix) {
+  public TabbedContentImpl(JComponent component, @NotNull String displayName, boolean isPinnable, @NotNull String titlePrefix) {
     super(component, displayName, isPinnable);
     myPrefix = titlePrefix;
     addContent(component, displayName, true);
@@ -96,6 +97,7 @@ public class TabbedContentImpl extends ContentImpl implements TabbedContent {
     setComponent(tab.second);
   }
 
+  @Override
   public int getSelectedIndex() {
     JComponent selected = getComponent();
     for (int i = 0; i < myTabs.size(); i++) {
@@ -116,11 +118,7 @@ public class TabbedContentImpl extends ContentImpl implements TabbedContent {
 
   @Override
   public String getTabName() {
-    String selected = findTabNameByComponent(getComponent());
-    if (myPrefix != null) {
-      selected = myPrefix + ": " + selected;
-    }
-    return selected;
+    return myPrefix + ": " + findTabNameByComponent(getComponent());
   }
 
   private String findTabNameByComponent(JComponent c) {
@@ -132,6 +130,7 @@ public class TabbedContentImpl extends ContentImpl implements TabbedContent {
     return null;
   }
 
+  @NotNull
   @Override
   public List<Pair<String, JComponent>> getTabs() {
     return Collections.unmodifiableList(myTabs);
@@ -149,7 +148,7 @@ public class TabbedContentImpl extends ContentImpl implements TabbedContent {
 
   @Override
   public void split() {
-    List<Pair<String, JComponent>> copy = new ArrayList<Pair<String, JComponent>>(myTabs);
+    List<Pair<String, JComponent>> copy = new ArrayList<>(myTabs);
     int selectedTab = ContentUtilEx.getSelectedTab(this);
     ContentManager manager = getManager();
     String prefix = getTitlePrefix();
index 06642c019a5dfa2c59a4f6768293d265cf34ce7e..15367a101a8da735e5b73a1b750379e72e200084 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.util.graph;
 
 import com.intellij.util.graph.impl.GraphAlgorithmsImpl;
+import org.jetbrains.annotations.NotNull;
 
 import java.util.*;
 
@@ -43,16 +44,19 @@ public abstract class GraphTestCase {
       }
     }
     return new Graph<String>() {
+      @NotNull
       @Override
       public Collection<String> getNodes() {
         return graph.keySet();
       }
 
+      @NotNull
       @Override
       public Iterator<String> getIn(final String n) {
         return in.get(n).iterator();
       }
 
+      @NotNull
       @Override
       public Iterator<String> getOut(String n) {
         return out.get(n).iterator();
index 102c15439138a099771a79c38904e96808cd9d1e..0fdf0f296f4d056df24ba1221f858e5b9d20ac30 100644 (file)
@@ -851,11 +851,13 @@ public abstract class ModuleManagerImpl extends ModuleManager implements Disposa
     @NotNull
     private Graph<Module> moduleGraph(final boolean includeTests) {
       return GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<Module>() {
+        @NotNull
         @Override
         public Collection<Module> getNodes() {
           return myModules.values();
         }
 
+        @NotNull
         @Override
         public Iterator<Module> getIn(Module m) {
           Module[] dependentModules = ModuleRootManager.getInstance(m).getDependencies(includeTests);
index 9cc0344c081ea9955c3824ed95f7558f89eaef92..2ae10d040a25163bc24cd0f7496c03a1f04ffdf5 100644 (file)
@@ -101,11 +101,13 @@ public class ModifiableModelCommitter {
 
     final Collection<RootModelImpl> allRootModels = nameToModel.values();
     InboundSemiGraph<RootModelImpl> graph = new InboundSemiGraph<RootModelImpl>() {
+      @NotNull
       @Override
       public Collection<RootModelImpl> getNodes() {
         return allRootModels;
       }
 
+      @NotNull
       @Override
       public Iterator<RootModelImpl> getIn(RootModelImpl rootModel) {
         OrderEnumerator entries = rootModel.orderEntries().withoutSdk().withoutLibraries().withoutModuleSourceEntries();
index a9e7c9ca292e25fa3e2fbc1df4ed0607afb317ee..188349c324a0b49cf21206234d3de3049cf7be18 100644 (file)
@@ -21,7 +21,6 @@ import com.intellij.openapi.module.UnloadedModuleDescription;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.search.GlobalSearchScope;
-import java.util.HashMap;
 import com.intellij.util.graph.Graph;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -36,7 +35,8 @@ public abstract class SourceScope {
   public abstract Project getProject();
   public abstract GlobalSearchScope getLibrariesScope();
 
-  public static Map<Module, Collection<Module>> buildAllDependencies(final Project project) {
+  @NotNull
+  private static Map<Module, Collection<Module>> buildAllDependencies(@NotNull Project project) {
     Graph<Module> graph = ModuleManager.getInstance(project).moduleGraph();
     Map<Module, Collection<Module>> result = new HashMap<>();
     for (final Module module : graph.getNodes()) {
@@ -45,7 +45,7 @@ public abstract class SourceScope {
     return result;
   }
 
-  private static void buildDependenciesForModule(final Module module, final Graph<Module> graph, Map<Module, Collection<Module>> map) {
+  private static void buildDependenciesForModule(@NotNull Module module, final Graph<Module> graph, Map<Module, Collection<Module>> map) {
     final Set<Module> deps = new HashSet<>();
     map.put(module, deps);
 
@@ -65,10 +65,11 @@ public abstract class SourceScope {
   private abstract static class ModuleSourceScope extends SourceScope {
     private final Project myProject;
 
-    protected ModuleSourceScope(final Project project) {
+    ModuleSourceScope(final Project project) {
       myProject = project;
     }
 
+    @Override
     public Project getProject() {
       return myProject;
     }
@@ -77,18 +78,22 @@ public abstract class SourceScope {
 
   public static SourceScope wholeProject(final Project project) {
     return new SourceScope() {
+      @Override
       public GlobalSearchScope getGlobalSearchScope() {
         return GlobalSearchScope.allScope(project);
       }
 
+      @Override
       public Project getProject() {
         return project;
       }
 
+      @Override
       public Module[] getModulesToCompile() {
         return ModuleManager.getInstance(project).getModules();
       }
 
+      @Override
       public GlobalSearchScope getLibrariesScope() {
         return getGlobalSearchScope();
       }
@@ -98,22 +103,17 @@ public abstract class SourceScope {
   public static SourceScope modulesWithDependencies(final Module[] modules) {
     if (modules == null || modules.length == 0) return null;
     return new ModuleSourceScope(modules[0].getProject()) {
+      @Override
       public GlobalSearchScope getGlobalSearchScope() {
-        return evaluateScopesAndUnite(modules, new ScopeForModuleEvaluator() {
-          public GlobalSearchScope evaluate(final Module module) {
-            return GlobalSearchScope.moduleWithDependenciesScope(module);
-          }
-        });
+        return evaluateScopesAndUnite(modules, module -> GlobalSearchScope.moduleWithDependenciesScope(module));
       }
 
+      @Override
       public GlobalSearchScope getLibrariesScope() {
-        return evaluateScopesAndUnite(modules, new ScopeForModuleEvaluator() {
-          public GlobalSearchScope evaluate(final Module module) {
-            return new ModuleWithDependenciesAndLibsDependencies(module);
-          }
-        });
+        return evaluateScopesAndUnite(modules, module -> new ModuleWithDependenciesAndLibsDependencies(module));
       }
 
+      @Override
       public Module[] getModulesToCompile() {
         return modules;
       }
@@ -136,22 +136,17 @@ public abstract class SourceScope {
   public static SourceScope modules(final Module[] modules) {
     if (modules == null || modules.length == 0) return null;
     return new ModuleSourceScope(modules[0].getProject()) {
+      @Override
       public GlobalSearchScope getGlobalSearchScope() {
-        return evaluateScopesAndUnite(modules, new ScopeForModuleEvaluator() {
-          public GlobalSearchScope evaluate(final Module module) {
-            return GlobalSearchScope.moduleScope(module);
-          }
-        });
+        return evaluateScopesAndUnite(modules, module -> GlobalSearchScope.moduleScope(module));
       }
 
+      @Override
       public GlobalSearchScope getLibrariesScope() {
-        return evaluateScopesAndUnite(modules, new ScopeForModuleEvaluator() {
-          public GlobalSearchScope evaluate(final Module module) {
-            return GlobalSearchScope.moduleWithLibrariesScope(module);
-          }
-        });
+        return evaluateScopesAndUnite(modules, module -> GlobalSearchScope.moduleWithLibrariesScope(module));
       }
 
+      @Override
       public Module[] getModulesToCompile() {
         return modules;
       }
@@ -164,21 +159,22 @@ public abstract class SourceScope {
     private final GlobalSearchScope myMainScope;
     private final List<GlobalSearchScope> myScopes = new ArrayList<>();
 
-    public ModuleWithDependenciesAndLibsDependencies(final Module module) {
+    ModuleWithDependenciesAndLibsDependencies(final Module module) {
       super(module.getProject());
       myMainScope = GlobalSearchScope.moduleWithDependenciesAndLibrariesScope(module);
       final Map<Module, Collection<Module>> map = buildAllDependencies(module.getProject());
-      if (map == null) return;
       final Collection<Module> modules = map.get(module);
       for (final Module dependency : modules) {
         myScopes.add(GlobalSearchScope.moduleWithLibrariesScope(dependency));
       }
     }
 
+    @Override
     public boolean contains(@NotNull final VirtualFile file) {
       return findScopeFor(file) != null;
     }
 
+    @Override
     public int compare(@NotNull final VirtualFile file1, @NotNull final VirtualFile file2) {
       final GlobalSearchScope scope = findScopeFor(file1);
       assert scope != null;
@@ -196,6 +192,7 @@ public abstract class SourceScope {
       return true;
     }
 
+    @NotNull
     @Override
     public Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
       return myMainScope.getUnloadedModulesBelongingToScope();
index ee09f52560f4bd52a8ae354dbd1b71326bfd65c5..6519ff7bf6b087f2314b084d217b40f853860eb2 100644 (file)
@@ -36,7 +36,7 @@ public class FindUsagesProcessPresentation {
   private Collection<VirtualFile> myLargeFiles;
   private boolean myShowFindOptionsPrompt = true;
   private volatile Runnable mySearchWithProjectFiles;
-  private boolean myCanceled;
+  private volatile boolean myCanceled;
 
   public FindUsagesProcessPresentation(@NotNull UsageViewPresentation presentation) {
     myUsageViewPresentation = presentation;
index 88dd61c768444fde9cdbbbcb3ccedd2d20360527..56448307c334b361b61376b8bf7d8911807263fa 100644 (file)
@@ -96,7 +96,7 @@ class SearchForUsagesRunnable implements Runnable {
   }
 
   @NotNull
-  private static String createOptionsHtml(@NonNls UsageTarget[] searchFor) {
+  private static String createOptionsHtml(@NonNls @NotNull UsageTarget[] searchFor) {
     KeyboardShortcut shortcut = UsageViewImpl.getShowUsagesWithSettingsShortcut(searchFor);
     String shortcutText = "";
     if (shortcut != null) {
@@ -152,6 +152,7 @@ class SearchForUsagesRunnable implements Runnable {
     ToolWindowManager.getInstance(myProject).notifyByBalloon(ToolWindowId.FIND, actualType, wrapInHtml(resultLines), AllIcons.Actions.Find, resultListener);
   }
 
+  @NotNull
   private Collection<UnloadedModuleDescription> getUnloadedModulesBelongingToScope() {
     return ReadAction.compute(() -> {
       if (!(mySearchScopeToWarnOfFallingOutOf instanceof GlobalSearchScope)) return Collections.emptySet();
@@ -181,6 +182,7 @@ class SearchForUsagesRunnable implements Runnable {
     return resolveScope;
   }
 
+  @NotNull
   private static HyperlinkListener addHrefHandling(@Nullable final HyperlinkListener listener,
                                                    @NotNull final String hrefTarget, @NotNull final Runnable handler) {
     return new HyperlinkAdapter() {
@@ -202,7 +204,7 @@ class SearchForUsagesRunnable implements Runnable {
   }
 
   @NotNull
-  private static String detailedLargeFilesMessage(@NotNull Collection<VirtualFile> largeFiles) {
+  private static String detailedLargeFilesMessage(@NotNull Collection<? extends VirtualFile> largeFiles) {
     String message = "";
     if (largeFiles.size() == 1) {
       final VirtualFile vFile = largeFiles.iterator().next();
@@ -496,7 +498,7 @@ class SearchForUsagesRunnable implements Runnable {
   }
 
   @NotNull
-  private static String mayHaveUsagesInUnloadedModulesMessage(@NotNull Collection<UnloadedModuleDescription> unloadedModules) {
+  private static String mayHaveUsagesInUnloadedModulesMessage(@NotNull Collection<? extends UnloadedModuleDescription> unloadedModules) {
     String modulesText = unloadedModules.size() > 1 ? unloadedModules.size() + " unloaded modules"
                                                     : "unloaded module '" + ObjectUtils.assertNotNull(ContainerUtil.getFirstItem(unloadedModules)).getName() + "'";
     return "Occurrences in " + modulesText + " may be skipped. Load all modules and repeat the search to get complete results.";
index adb706f15bd14fa923ea7b283406d86eb8f429ff..a0c8252231337b8b683821820c36ea989f532982 100644 (file)
@@ -106,10 +106,11 @@ public class RelativePoint {
     return new MouseEvent(myComponent, 0, 0, 0, myPointOnComponent.x, myPointOnComponent.y, 1, false); 
   }
 
+  @Override
   @NotNull
   public String toString() {
     //noinspection HardCodedStringLiteral
-    return getPoint() + " on " + getComponent().toString();
+    return getPoint() + " on " + getComponent();
   }
 
   @NotNull
index 23cb82d8d9035f6ae241a6865a4d76f6ed511180..537c5414571ba7eff6072d715e02d96d5a896005 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.util.graph;
 
 import com.intellij.util.containers.ContainerUtil;
 import gnu.trove.THashMap;
+import org.jetbrains.annotations.NotNull;
 
 import java.util.*;
 
@@ -44,11 +45,13 @@ public class CachingSemiGraph<Node> implements GraphGenerator.SemiGraph<Node> {
     }
   }
 
+  @NotNull
   @Override
   public Collection<Node> getNodes() {
     return myNodes;
   }
 
+  @NotNull
   @Override
   public Iterator<Node> getIn(Node n) {
     final List<Node> inNodes = myIn.get(n);
index c97876a337955c418795d16f25a431a5d23f3b10..80e76a49d317c384ad5d51a1a26c85302ce0c631 100644 (file)
@@ -15,6 +15,8 @@
  */
 package com.intellij.util.graph;
 
+import org.jetbrains.annotations.NotNull;
+
 import java.util.Collection;
 import java.util.Iterator;
 
@@ -23,11 +25,14 @@ import java.util.Iterator;
  */
 public interface Graph<Node> extends InboundSemiGraph<Node>, OutboundSemiGraph<Node> {
   @Override
+  @NotNull
   Collection<Node> getNodes();
 
   @Override
+  @NotNull
   Iterator<Node> getIn(Node n);
 
   @Override
+  @NotNull
   Iterator<Node> getOut(Node n);
 }
\ No newline at end of file
index 4dcc6e5d962d3482574423c9f734f5419d76c618..91f88efcff556e947905d9247d926efc29a6bb7e 100644 (file)
@@ -66,16 +66,19 @@ public class GraphGenerator<Node> implements Graph<Node> {
     }
   }
 
+  @NotNull
   @Override
   public Collection<Node> getNodes() {
     return myGraph.getNodes();
   }
 
+  @NotNull
   @Override
   public Iterator<Node> getIn(Node n) {
     return myGraph.getIn(n);
   }
 
+  @NotNull
   @Override
   public Iterator<Node> getOut(Node n) {
     final List<Node> outNodes = myOuts.get(n);
@@ -86,8 +89,12 @@ public class GraphGenerator<Node> implements Graph<Node> {
 
   //<editor-fold desc="Deprecated stuff.">
   public interface SemiGraph<Node> extends InboundSemiGraph<Node> {
+    @Override
+    @NotNull
     Collection<Node> getNodes();
 
+    @NotNull
+    @Override
     Iterator<Node> getIn(Node n);
   }
 
index 108c6dc5e448fe006df5aad97f0b507b927c6332..517291b1940faf72dc69de06a4a08de793502fdf 100644 (file)
  */
 package com.intellij.util.graph;
 
+import org.jetbrains.annotations.NotNull;
+
 import java.util.Collection;
 import java.util.Iterator;
 
 public interface InboundSemiGraph<Node> {
+  @NotNull
   Collection<Node> getNodes();
 
+  @NotNull
   Iterator<Node> getIn(Node n);
 }
\ No newline at end of file
index 6a4688dc07cc6551f89a701acc5e2c10e2e6776c..630a59f349eab7ece9ed5452dc4aa23d76bb8647 100644 (file)
  */
 package com.intellij.util.graph;
 
+import org.jetbrains.annotations.NotNull;
+
 import java.util.Collection;
 import java.util.Iterator;
 
 public interface OutboundSemiGraph<Node> {
+  @NotNull
   Collection<Node> getNodes();
 
+  @NotNull
   Iterator<Node> getOut(Node n);
 }
\ No newline at end of file
index 80edd4f90a90ee374aaa497404047dca98d2a738..995afb91d35c2a1671e030bf180d2b6f1909c42b 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.util.graph;
 
 import com.intellij.util.ObjectUtils;
 import com.intellij.util.graph.impl.GraphAlgorithmsImpl;
+import org.jetbrains.annotations.NotNull;
 import org.junit.Test;
 
 import java.util.*;
@@ -62,11 +63,13 @@ public class DFSTBuilderTest {
 
   private static Graph<TestNode> graphByNodes(TestNode[] allNodes, Map<TestNode, TestNode[]> mapIn) {
     return GraphGenerator.generate(new InboundSemiGraph<TestNode>() {
+      @NotNull
       @Override
       public Collection<TestNode> getNodes() {
         return Arrays.asList(allNodes);
       }
 
+      @NotNull
       @Override
       public Iterator<TestNode> getIn(TestNode n) {
         return GraphTestUtil.iteratorOfArray(ObjectUtils.notNull(mapIn.get(n), new TestNode[0]));
index 14e54c2bf3396bd644ac5574add1377aa31a12ce..91d9aa3a64f7b84085f8792ab9b86c3db787cedc 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.util.graph;
 
 import com.intellij.util.containers.EmptyIterator;
+import org.jetbrains.annotations.NotNull;
 import org.junit.Test;
 
 import java.util.*;
@@ -30,11 +31,13 @@ public class GraphGeneratorTest {
   public void testEmptyGraph() {
     TestNode node = new TestNode("A");
     Graph<TestNode> graph = GraphGenerator.generate(new InboundSemiGraph<TestNode>() {
+      @NotNull
       @Override
       public Collection<TestNode> getNodes() {
         return Collections.singletonList(node);
       }
 
+      @NotNull
       @Override
       public Iterator<TestNode> getIn(TestNode n) {
         return EmptyIterator.getInstance();
@@ -53,11 +56,13 @@ public class GraphGeneratorTest {
     TestNode[] inB = {nodeA};
 
     Graph<TestNode> graph = GraphGenerator.generate(new InboundSemiGraph<TestNode>() {
+      @NotNull
       @Override
       public Collection<TestNode> getNodes() {
         return Arrays.asList(nodes);
       }
 
+      @NotNull
       @Override
       public Iterator<TestNode> getIn(TestNode n) {
         if (n == nodeA) return Arrays.asList(inA).iterator();
index 20d21b8457acf58af85b6b96f67331b805a020d4..1b27d6ceae7468a8e628f3677b350a3c2118a7ee 100644 (file)
@@ -363,11 +363,13 @@ public class ConversionServiceImpl extends ConversionService {
       myProviders = providers;
     }
 
+    @NotNull
     @Override
     public Collection<ConverterProvider> getNodes() {
       return Arrays.asList(myProviders);
     }
 
+    @NotNull
     @Override
     public Iterator<ConverterProvider> getIn(ConverterProvider n) {
       List<ConverterProvider> preceding = new ArrayList<>();
index 6af704c77bcfc64b957479220b533f576897372a..eeba9e9e520a09f3fa3ef35d92b21ea0a20bfac6 100644 (file)
@@ -531,7 +531,7 @@ public class ChangesViewManager implements ChangesViewI, ProjectComponent, Persi
 
   private class MyChangeViewContent extends DnDActivateOnHoldTargetContent {
   
-    private MyChangeViewContent(JComponent component, String displayName, boolean isLockable) {
+    private MyChangeViewContent(JComponent component, @NotNull String displayName, boolean isLockable) {
       super(myProject, component, displayName, isLockable);
     }
 
index dcd0cbc5d36cb1a156ea26b9c4f601d2687c2e9c..b7f23040269b2f485da99de40540101a67f136bf 100644 (file)
@@ -34,7 +34,7 @@ public abstract class DnDActivateOnHoldTargetContent extends ContentImpl impleme
   private final SingleAlarm myAlarm;
   @NotNull private final Project myProject;
 
-  protected DnDActivateOnHoldTargetContent(@NotNull Project project, JComponent component, String displayName, boolean isLockable) {
+  protected DnDActivateOnHoldTargetContent(@NotNull Project project, JComponent component, @NotNull String displayName, boolean isLockable) {
     super(component, displayName, isLockable);
     myProject = project;
     myAlarm = new SingleAlarm(() -> activateContent(), 700);
index 02291f65c718a790b409894159b8ac617f4f3cd1..414efa85ac98b130fe30beeba0f7d83acb9a04bf 100644 (file)
@@ -746,7 +746,7 @@ public class ShelvedChangesViewManager implements ProjectComponent {
 
   public class MyShelfContent extends DnDActivateOnHoldTargetContent {
 
-    private MyShelfContent(JPanel panel, String displayName, boolean isLockable) {
+    private MyShelfContent(JPanel panel, @NotNull String displayName, boolean isLockable) {
       super(myProject, panel, displayName, isLockable);
     }
 
index 8c7163fa6209c7dafcc133bdd8a3952ef3e1d207..607369d59480cb32523abab376e36b66bdee8c24 100644 (file)
@@ -94,7 +94,7 @@ public class AbstractVcsHelperImpl extends AbstractVcsHelper {
     super(project);
   }
 
-  public void openMessagesView(final VcsErrorViewPanel errorTreeView, final String tabDisplayName) {
+  public void openMessagesView(final VcsErrorViewPanel errorTreeView, @NotNull String tabDisplayName) {
     CommandProcessor commandProcessor = CommandProcessor.getInstance();
     commandProcessor.executeCommand(myProject, () -> {
       final MessageView messageView = MessageView.SERVICE.getInstance(myProject);
index 944a03daa6063bd31ed1a441aeb7b67b4b606af3..75c6d60d62aa132704007e88d01298bb7d97cc39 100644 (file)
@@ -328,6 +328,7 @@ public class TailRecursionInspection extends BaseInspection {
 
     private static Graph<Integer> buildGraph(PsiParameter[] parameters, PsiExpression[] arguments) {
       final InboundSemiGraph<Integer> graph = new InboundSemiGraph<Integer>() {
+        @NotNull
         @Override
         public Collection<Integer> getNodes() {
           final List<Integer> result = new ArrayList<>();
@@ -337,6 +338,7 @@ public class TailRecursionInspection extends BaseInspection {
           return result;
         }
 
+        @NotNull
         @Override
         public Iterator<Integer> getIn(Integer n) {
           final List<Integer> result = new ArrayList<>();
index f175cb2d8d907820eece3d50aca8a5b25be60b22..1e48d3e78fac9877f49657bb14449e2d22c0702c 100644 (file)
@@ -48,7 +48,6 @@ class GradleUseScopeEnlarger : UseScopeEnlarger() {
         override fun contains(file: VirtualFile): Boolean {
           return GradleConstants.EXTENSION == file.extension || file.name.endsWith(GradleConstants.KOTLIN_DSL_SCRIPT_EXTENSION)
         }
-        override fun compare(file1: VirtualFile, file2: VirtualFile) = 0
         override fun isSearchInModuleContent(aModule: Module) = rootProjectPath == getExternalRootProjectPath(module)
         override fun isSearchInLibraries() = false
       }
index 925c704a0e0f9534b88799d5b917394951bc761e..a00dbacd26cd0570179f64630ed1fcf0664b1af0 100644 (file)
@@ -174,6 +174,7 @@ public class ResourceBundlePropertiesUpdateManager {
 
     final boolean[] isAlphaSorted = new boolean[]{true};
     final Graph<String> generator = GraphGenerator.generate(CachingSemiGraph.cache(new InboundSemiGraph<String>() {
+      @NotNull
       @Override
       public Collection<String> getNodes() {
         final Set<String> nodes = new LinkedHashSet<>();
@@ -183,6 +184,7 @@ public class ResourceBundlePropertiesUpdateManager {
         return nodes;
       }
 
+      @NotNull
       @Override
       public Iterator<String> getIn(String n) {
         final Collection<String> siblings = new LinkedHashSet<>();
index 0dae1f00f8d2122649129ffd0f0c07b0c84f7dfb..e1b02b8b8e491fe5a7b41069bbb9b52b7d013643 100644 (file)
@@ -391,7 +391,7 @@ public class JBTabbedTerminalWidget extends TabbedTerminalWidget implements Disp
       private DragSession mySession;
 
       @Override
-      public void dragOutStarted(MouseEvent mouseEvent, TabInfo info) {
+      public void dragOutStarted(@NotNull MouseEvent mouseEvent, @NotNull TabInfo info) {
         final TabInfo previousSelection = info.getPreviousSelection();
         final Image img = JBTabsImpl.getComponentImage(info);
         info.setHidden(true);
@@ -412,12 +412,12 @@ public class JBTabbedTerminalWidget extends TabbedTerminalWidget implements Disp
       }
 
       @Override
-      public void processDragOut(MouseEvent event, TabInfo source) {
+      public void processDragOut(@NotNull MouseEvent event, @NotNull TabInfo source) {
         mySession.process(event);
       }
 
       @Override
-      public void dragOutFinished(MouseEvent event, TabInfo source) {
+      public void dragOutFinished(@NotNull MouseEvent event, TabInfo source) {
         myFile.putUserData(FileEditorManagerImpl.CLOSING_TO_REOPEN, Boolean.TRUE);
 
 
index 8624528ec6562d2a2eee0c0612576c914bb129ad..d3a47e277c1575528651b3bfe7a2885f350ca3f3 100644 (file)
@@ -32,14 +32,11 @@ public class TestNGSearchScope extends GlobalSearchScope {
     myFileIndex = ProjectRootManager.getInstance(project).getFileIndex();
   }
 
+  @Override
   public boolean contains(@NotNull VirtualFile file) {
     return myFileIndex.isInContent(file) && TestNGUtil.isTestngXML(file);
   }
 
-  public int compare(@NotNull VirtualFile file1, @NotNull VirtualFile file2) {
-    return 0;
-  }
-
   @Override
   public boolean isSearchInModuleContent(@NotNull Module aModule) {
     return true;