mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -140,9 +140,10 @@ public class AllClassesGetter {
|
||||
}
|
||||
};
|
||||
|
||||
public static void processJavaClasses(final CompletionParameters parameters,
|
||||
final PrefixMatcher prefixMatcher, final boolean filterByScope,
|
||||
final Consumer<PsiClass> consumer) {
|
||||
public static void processJavaClasses(@NotNull final CompletionParameters parameters,
|
||||
@NotNull final PrefixMatcher prefixMatcher,
|
||||
final boolean filterByScope,
|
||||
@NotNull final Consumer<PsiClass> consumer) {
|
||||
final PsiElement context = parameters.getPosition();
|
||||
final Project project = context.getProject();
|
||||
final GlobalSearchScope scope = filterByScope ? context.getContainingFile().getResolveScope() : GlobalSearchScope.allScope(project);
|
||||
@@ -167,10 +168,10 @@ public class AllClassesGetter {
|
||||
processJavaClasses(prefixMatcher, project, scope, processor);
|
||||
}
|
||||
|
||||
public static void processJavaClasses(final PrefixMatcher prefixMatcher,
|
||||
Project project,
|
||||
GlobalSearchScope scope,
|
||||
Processor<PsiClass> processor) {
|
||||
public static void processJavaClasses(@NotNull final PrefixMatcher prefixMatcher,
|
||||
@NotNull Project project,
|
||||
@NotNull GlobalSearchScope scope,
|
||||
@NotNull Processor<PsiClass> processor) {
|
||||
AllClassesSearch.search(scope, project, new Condition<String>() {
|
||||
@Override
|
||||
public boolean value(String s) {
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ public class JavaClassNameCompletionContributor extends CompletionContributor {
|
||||
return false;
|
||||
}
|
||||
|
||||
public static void addAllClasses(CompletionParameters parameters,
|
||||
public static void addAllClasses(@NotNull CompletionParameters parameters,
|
||||
final boolean filterByScope,
|
||||
@NotNull final PrefixMatcher matcher,
|
||||
@NotNull final Consumer<LookupElement> consumer) {
|
||||
|
||||
@@ -22,10 +22,12 @@ package com.intellij.psi.search.searches;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.openapi.util.Conditions;
|
||||
import com.intellij.psi.PsiClass;
|
||||
import com.intellij.psi.search.SearchScope;
|
||||
import com.intellij.util.Query;
|
||||
import com.intellij.util.QueryExecutor;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class AllClassesSearch extends ExtensibleQueryFactory<PsiClass, AllClassesSearch.SearchParameters> {
|
||||
public static ExtensionPointName<QueryExecutor> EP_NAME = ExtensionPointName.create("com.intellij.allClassesSearch");
|
||||
@@ -36,20 +38,22 @@ public class AllClassesSearch extends ExtensibleQueryFactory<PsiClass, AllClasse
|
||||
private final Project myProject;
|
||||
private final Condition<String> myShortNameCondition;
|
||||
|
||||
public SearchParameters(final SearchScope scope, final Project project) {
|
||||
this(scope, project, Condition.TRUE);
|
||||
public SearchParameters(@NotNull SearchScope scope, @NotNull Project project) {
|
||||
this(scope, project, Conditions.<String>alwaysTrue());
|
||||
}
|
||||
|
||||
public SearchParameters(final SearchScope scope, final Project project, final Condition<String> shortNameCondition) {
|
||||
public SearchParameters(@NotNull SearchScope scope, @NotNull Project project, @NotNull Condition<String> shortNameCondition) {
|
||||
myScope = scope;
|
||||
myProject = project;
|
||||
myShortNameCondition = shortNameCondition;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public SearchScope getScope() {
|
||||
return myScope;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Project getProject() {
|
||||
return myProject;
|
||||
}
|
||||
@@ -59,11 +63,13 @@ public class AllClassesSearch extends ExtensibleQueryFactory<PsiClass, AllClasse
|
||||
}
|
||||
}
|
||||
|
||||
public static Query<PsiClass> search(SearchScope scope, Project project) {
|
||||
@NotNull
|
||||
public static Query<PsiClass> search(@NotNull SearchScope scope, @NotNull Project project) {
|
||||
return INSTANCE.createQuery(new SearchParameters(scope, project));
|
||||
}
|
||||
|
||||
public static Query<PsiClass> search(SearchScope scope, Project project, Condition<String> shortNameCondition) {
|
||||
@NotNull
|
||||
public static Query<PsiClass> search(@NotNull SearchScope scope, @NotNull Project project, @NotNull Condition<String> shortNameCondition) {
|
||||
return INSTANCE.createQuery(new SearchParameters(scope, project, shortNameCondition));
|
||||
}
|
||||
}
|
||||
+8
-5
@@ -50,7 +50,7 @@ public class AllClassesSearchExecutor implements QueryExecutor<PsiClass, AllClas
|
||||
SearchScope scope = queryParameters.getScope();
|
||||
|
||||
if (scope instanceof GlobalSearchScope) {
|
||||
return processAllClassesInGlobalScope((GlobalSearchScope)scope, consumer, queryParameters);
|
||||
return processAllClassesInGlobalScope((GlobalSearchScope)scope, queryParameters, consumer);
|
||||
}
|
||||
|
||||
PsiElement[] scopeRoots = ((LocalSearchScope)scope).getScope();
|
||||
@@ -59,8 +59,9 @@ public class AllClassesSearchExecutor implements QueryExecutor<PsiClass, AllClas
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private static String[] getAllClassNames(final Project project) {
|
||||
|
||||
@NotNull
|
||||
private static String[] getAllClassNames(@NotNull final Project project) {
|
||||
return ApplicationManager.getApplication().runReadAction(new Computable<String[]>() {
|
||||
@Override
|
||||
public String[] compute() {
|
||||
@@ -81,7 +82,9 @@ public class AllClassesSearchExecutor implements QueryExecutor<PsiClass, AllClas
|
||||
});
|
||||
}
|
||||
|
||||
private static boolean processAllClassesInGlobalScope(final GlobalSearchScope scope, final Processor<PsiClass> processor, final AllClassesSearch.SearchParameters parameters) {
|
||||
private static boolean processAllClassesInGlobalScope(@NotNull final GlobalSearchScope scope,
|
||||
@NotNull AllClassesSearch.SearchParameters parameters,
|
||||
@NotNull Processor<PsiClass> processor) {
|
||||
String[] names = getAllClassNames(parameters.getProject());
|
||||
final ProgressIndicator indicator = ProgressIndicatorProvider.getGlobalProgressIndicator();
|
||||
if (indicator != null) {
|
||||
@@ -129,7 +132,7 @@ public class AllClassesSearchExecutor implements QueryExecutor<PsiClass, AllClas
|
||||
return true;
|
||||
}
|
||||
|
||||
private static boolean processScopeRootForAllClasses(@NotNull PsiElement scopeRoot, final Processor<PsiClass> processor) {
|
||||
private static boolean processScopeRootForAllClasses(@NotNull PsiElement scopeRoot, @NotNull final Processor<PsiClass> processor) {
|
||||
final boolean[] stopped = {false};
|
||||
|
||||
JavaElementVisitor visitor = scopeRoot instanceof PsiCompiledElement ? new JavaRecursiveElementVisitor() {
|
||||
|
||||
@@ -17,6 +17,7 @@ package com.intellij.openapi.startup;
|
||||
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author Dmitry Avdeev
|
||||
@@ -27,5 +28,5 @@ public interface StartupActivity {
|
||||
|
||||
ExtensionPointName<StartupActivity> POST_STARTUP_ACTIVITY = ExtensionPointName.create("com.intellij.postStartupActivity");
|
||||
|
||||
void runActivity(Project project);
|
||||
void runActivity(@NotNull Project project);
|
||||
}
|
||||
|
||||
@@ -19,19 +19,20 @@ import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.util.UserDataHolder;
|
||||
import com.intellij.pom.event.PomModelListener;
|
||||
import com.intellij.util.IncorrectOperationException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
public interface PomModel extends UserDataHolder {
|
||||
<T extends PomModelAspect> T getModelAspect(Class<T> aClass);
|
||||
<T extends PomModelAspect> T getModelAspect(@NotNull Class<T> aClass);
|
||||
|
||||
void registerAspect(Class<? extends PomModelAspect> aClass,
|
||||
PomModelAspect aspect,
|
||||
Set<PomModelAspect> dependencies);
|
||||
void registerAspect(@NotNull Class<? extends PomModelAspect> aClass,
|
||||
@NotNull PomModelAspect aspect,
|
||||
@NotNull Set<PomModelAspect> dependencies);
|
||||
|
||||
void addModelListener(PomModelListener listener);
|
||||
void addModelListener(PomModelListener listener, Disposable parentDisposable);
|
||||
void removeModelListener(PomModelListener listener);
|
||||
void addModelListener(@NotNull PomModelListener listener);
|
||||
void addModelListener(@NotNull PomModelListener listener, @NotNull Disposable parentDisposable);
|
||||
void removeModelListener(@NotNull PomModelListener listener);
|
||||
|
||||
void runTransaction(PomTransaction transaction) throws IncorrectOperationException;
|
||||
void runTransaction(@NotNull PomTransaction transaction) throws IncorrectOperationException;
|
||||
}
|
||||
@@ -70,13 +70,13 @@ public class PomModelImpl extends UserDataHolderBase implements PomModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T extends PomModelAspect> T getModelAspect(Class<T> aClass) {
|
||||
public <T extends PomModelAspect> T getModelAspect(@NotNull Class<T> aClass) {
|
||||
//noinspection unchecked
|
||||
return (T)myAspects.get(aClass);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerAspect(Class<? extends PomModelAspect> aClass, PomModelAspect aspect, Set<PomModelAspect> dependencies) {
|
||||
public void registerAspect(@NotNull Class<? extends PomModelAspect> aClass, @NotNull PomModelAspect aspect, @NotNull Set<PomModelAspect> dependencies) {
|
||||
myAspects.put(aClass, aspect);
|
||||
final Iterator<PomModelAspect> iterator = dependencies.iterator();
|
||||
final List<PomModelAspect> deps = new ArrayList<PomModelAspect>();
|
||||
@@ -110,12 +110,12 @@ public class PomModelImpl extends UserDataHolderBase implements PomModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addModelListener(PomModelListener listener) {
|
||||
public void addModelListener(@NotNull PomModelListener listener) {
|
||||
myListeners.add(listener);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addModelListener(final PomModelListener listener, Disposable parentDisposable) {
|
||||
public void addModelListener(@NotNull final PomModelListener listener, @NotNull Disposable parentDisposable) {
|
||||
addModelListener(listener);
|
||||
Disposer.register(parentDisposable, new Disposable() {
|
||||
@Override
|
||||
@@ -126,14 +126,14 @@ public class PomModelImpl extends UserDataHolderBase implements PomModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeModelListener(PomModelListener listener) {
|
||||
public void removeModelListener(@NotNull PomModelListener listener) {
|
||||
myListeners.remove(listener);
|
||||
}
|
||||
|
||||
private final Stack<Pair<PomModelAspect, PomTransaction>> myBlockedAspects = new Stack<Pair<PomModelAspect, PomTransaction>>();
|
||||
|
||||
@Override
|
||||
public void runTransaction(PomTransaction transaction) throws IncorrectOperationException{
|
||||
public void runTransaction(@NotNull PomTransaction transaction) throws IncorrectOperationException{
|
||||
List<Throwable> throwables = new ArrayList<Throwable>(0);
|
||||
synchronized(PsiLock.LOCK){
|
||||
final PomModelAspect aspect = transaction.getTransactionAspect();
|
||||
@@ -233,20 +233,20 @@ public class PomModelImpl extends UserDataHolderBase implements PomModel {
|
||||
if (containingFileByTree != null) {
|
||||
boolean isFromCommit = ApplicationManager.getApplication().isDispatchThread() &&
|
||||
ApplicationManager.getApplication().hasWriteAction(CommitToPsiFileAction.class);
|
||||
if (!isFromCommit && !synchronizer.isIgnorePsiEvents()) {
|
||||
if (!isFromCommit && !synchronizer.isIgnorePsiEvents()) {
|
||||
reparseParallelTrees(containingFileByTree);
|
||||
}
|
||||
}
|
||||
|
||||
if (progressIndicator != null) progressIndicator.finishNonCancelableSection();
|
||||
}
|
||||
|
||||
|
||||
private void reparseParallelTrees(PsiFile changedFile) {
|
||||
List<PsiFile> allFiles = changedFile.getViewProvider().getAllFiles();
|
||||
if (allFiles.size() <= 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
String newText = changedFile.getNode().getText();
|
||||
for (final PsiFile file : allFiles) {
|
||||
if (file != changedFile) {
|
||||
@@ -266,7 +266,7 @@ public class PomModelImpl extends UserDataHolderBase implements PomModel {
|
||||
|
||||
private void reparseFile(final PsiFile file, String newText, String oldText) {
|
||||
if (oldText.equals(newText)) return;
|
||||
|
||||
|
||||
PsiToDocumentSynchronizer synchronizer =((PsiDocumentManagerBase)PsiDocumentManager.getInstance(myProject)).getSynchronizer();
|
||||
int changeStart = StringUtil.commonPrefixLength(oldText, newText);
|
||||
int changeEnd = oldText.length() - StringUtil.commonSuffixLength(oldText, newText);
|
||||
|
||||
+3
-2
@@ -26,6 +26,7 @@ import com.intellij.openapi.externalSystem.util.ExternalSystemUtil;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import com.intellij.openapi.startup.StartupManager;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author Denis Zhdanov
|
||||
@@ -34,7 +35,7 @@ import com.intellij.openapi.startup.StartupManager;
|
||||
public class ExternalSystemStartupActivity implements StartupActivity {
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
Runnable task = new Runnable() {
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
@@ -61,6 +62,6 @@ public class ExternalSystemStartupActivity implements StartupActivity {
|
||||
}
|
||||
else {
|
||||
StartupManager.getInstance(project).registerPostStartupActivity(task);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
-2
@@ -83,8 +83,10 @@ public abstract class PassExecutorService implements Disposable {
|
||||
if (waitForTermination) {
|
||||
for (Job<Void> job : mySubmittedPasses.values()) {
|
||||
try {
|
||||
JobImpl ji = (JobImpl)job;
|
||||
if (!job.isDone()) ji.waitForTermination();
|
||||
if (job instanceof JobImpl) {
|
||||
JobImpl ji = (JobImpl)job;
|
||||
if (!job.isDone()) ji.waitForTermination();
|
||||
}
|
||||
}
|
||||
catch (Throwable throwable) {
|
||||
LOG.error(throwable);
|
||||
|
||||
+2
-1
@@ -19,6 +19,7 @@ import com.intellij.openapi.components.ServiceManager;
|
||||
import com.intellij.openapi.editor.ex.EditorSettingsExternalizable;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author Denis Zhdanov
|
||||
@@ -27,7 +28,7 @@ import com.intellij.openapi.startup.StartupActivity;
|
||||
public class QuickDocOnMouseOverStartupActivity implements StartupActivity {
|
||||
|
||||
@Override
|
||||
public void runActivity(Project project) {
|
||||
public void runActivity(@NotNull Project project) {
|
||||
if (EditorSettingsExternalizable.getInstance().isShowQuickDocOnMouseOverElement()) {
|
||||
ServiceManager.getService(QuickDocOnMouseOverManager.class).setEnabled(true);
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ public class BraceHighlighter implements StartupActivity {
|
||||
private final Alarm myAlarm = new Alarm();
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
final EditorEventMulticaster eventMulticaster = EditorFactory.getInstance().getEventMulticaster();
|
||||
|
||||
CaretListener myCaretListener = new CaretListener() {
|
||||
|
||||
+1
-4
@@ -255,10 +255,7 @@ public class CodeFormatterFacade {
|
||||
private static TextRange preprocess(@NotNull final ASTNode node, @NotNull TextRange range) {
|
||||
TextRange result = range;
|
||||
PsiElement psi = node.getPsi();
|
||||
if (!psi.isValid()) {
|
||||
for(PreFormatProcessor processor: Extensions.getExtensions(PreFormatProcessor.EP_NAME)) {
|
||||
result = processor.process(node, result);
|
||||
}
|
||||
if (!psi.isValid()) {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,13 @@ import com.intellij.openapi.project.DumbAware;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import com.intellij.openapi.wm.ToolWindowManager;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class TipOfTheDayManager implements StartupActivity, DumbAware {
|
||||
private boolean myVeryFirstProjectOpening = true;
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
if (!myVeryFirstProjectOpening || !GeneralSettings.getInstance().showTipsOnStartup()) {
|
||||
return;
|
||||
}
|
||||
|
||||
+2
-1
@@ -20,6 +20,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.project.DumbAware;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
@@ -27,7 +28,7 @@ import com.intellij.openapi.startup.StartupActivity;
|
||||
public class ActionPreloader implements StartupActivity, DumbAware {
|
||||
|
||||
@Override
|
||||
public void runActivity(Project project) {
|
||||
public void runActivity(@NotNull Project project) {
|
||||
if (!ApplicationManager.getApplication().isUnitTestMode() && !ApplicationManager.getApplication().isHeadlessEnvironment()) {
|
||||
((ActionManagerImpl)ActionManager.getInstance()).preloadActions();
|
||||
}
|
||||
|
||||
+2
-1
@@ -21,6 +21,7 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author Dmitry Avdeev
|
||||
@@ -29,7 +30,7 @@ import com.intellij.util.ui.UIUtil;
|
||||
public class OpenFilesActivity implements StartupActivity, DumbAware {
|
||||
|
||||
@Override
|
||||
public void runActivity(Project project) {
|
||||
public void runActivity(@NotNull Project project) {
|
||||
final FileEditorManager fileEditorManager = FileEditorManager.getInstance(project);
|
||||
if (fileEditorManager instanceof FileEditorManagerImpl) {
|
||||
Runnable runnable = new Runnable() {
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ import java.util.Map;
|
||||
*/
|
||||
public class ApproveRemovedMappingsActivity implements StartupActivity {
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
final Map<FileNameMatcher,Pair<FileType,Boolean>> map = ((FileTypeManagerImpl)FileTypeManager.getInstance()).getRemovedMappings();
|
||||
if (!map.isEmpty()) {
|
||||
UIUtil.invokeAndWaitIfNeeded(new Runnable() {
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.wm.ToolWindowManager;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
@@ -27,7 +28,7 @@ import com.intellij.openapi.wm.ToolWindowManager;
|
||||
public class FilesystemToolwindowOpener implements StartupActivity, DumbAware {
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
final VirtualFile baseDir = ProjectBaseDirectory.getInstance(project).getBaseDir();
|
||||
if (baseDir == null || !baseDir.isDirectory()) return;
|
||||
ToolWindowManager.getInstance(project).invokeLater(new Runnable() {
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.intellij.openapi.util.Disposer;
|
||||
import com.intellij.openapi.util.ShutDownTracker;
|
||||
import org.jboss.netty.channel.ChannelException;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.annotations.TestOnly;
|
||||
import org.jetbrains.io.BuiltInServer;
|
||||
@@ -68,7 +69,7 @@ public class BuiltInServerManagerImpl extends BuiltInServerManager {
|
||||
private boolean veryFirstProjectOpening = true;
|
||||
|
||||
@Override
|
||||
public void runActivity(Project project) {
|
||||
public void runActivity(@NotNull Project project) {
|
||||
if (!veryFirstProjectOpening) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
*/
|
||||
package com.intellij.util;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
@@ -23,7 +25,7 @@ import java.util.Collection;
|
||||
public class CollectConsumer<T> implements Consumer<T> {
|
||||
private final Collection<T> myResult;
|
||||
|
||||
public CollectConsumer(Collection<T> result) {
|
||||
public CollectConsumer(@NotNull Collection<T> result) {
|
||||
myResult = result;
|
||||
}
|
||||
|
||||
@@ -31,10 +33,12 @@ public class CollectConsumer<T> implements Consumer<T> {
|
||||
this(new SmartList<T>());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void consume(T t) {
|
||||
myResult.add(t);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Collection<T> getResult() {
|
||||
return myResult;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright 2000-2013 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.intellij.util;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
public class SynchronizedCollectConsumer<T> extends CollectConsumer<T> {
|
||||
public SynchronizedCollectConsumer(@NotNull Collection<T> result) {
|
||||
super(result);
|
||||
}
|
||||
public SynchronizedCollectConsumer() {
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void consume(T t) {
|
||||
super.consume(t);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public synchronized Collection<T> getResult() {
|
||||
return super.getResult();
|
||||
}
|
||||
}
|
||||
@@ -212,7 +212,7 @@ implements ExternalSystemConfigurableAware, ExternalSystemUiAware, ExternalSyste
|
||||
for (String jar : gradleJars) {
|
||||
classPath.add(new File(gradleJarsDir, jar).getAbsolutePath());
|
||||
}
|
||||
|
||||
|
||||
List<String> additionalEntries = ContainerUtilRt.newArrayList();
|
||||
ContainerUtilRt.addIfNotNull(additionalEntries, PathUtil.getJarPathForClass(JavaProjectData.class));
|
||||
ContainerUtilRt.addIfNotNull(additionalEntries, PathUtil.getJarPathForClass(LanguageLevel.class));
|
||||
@@ -283,7 +283,7 @@ implements ExternalSystemConfigurableAware, ExternalSystemUiAware, ExternalSyste
|
||||
}
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
// We want to automatically refresh linked projects on gradle service directory change.
|
||||
MessageBusConnection connection = project.getMessageBus().connect(project);
|
||||
connection.subscribe(GradleSettings.getInstance(project).getChangesTopic(), new GradleSettingsListenerAdapter() {
|
||||
@@ -292,9 +292,9 @@ implements ExternalSystemConfigurableAware, ExternalSystemUiAware, ExternalSyste
|
||||
ExternalSystemUtil.refreshProjects(project, GradleConstants.SYSTEM_ID, true);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// We used to assume that gradle scripts are always named 'build.gradle' and kept path to that build.gradle file at ide settings.
|
||||
// However, it was found out that that is incorrect assumption (IDEA-109064). Now we keep paths to gradle script's directories
|
||||
// However, it was found out that that is incorrect assumption (IDEA-109064). Now we keep paths to gradle script's directories
|
||||
// instead. However, we don't want to force old users to re-import gradle projects because of that. That's why we check gradle
|
||||
// config and re-point it from build.gradle to the parent dir if necessary.
|
||||
Map<String, String> adjustedPaths = patchLinkedProjects(project);
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ import javax.swing.event.HyperlinkEvent;
|
||||
public class MvcProjectWithoutLibraryNotificator implements StartupActivity, DumbAware {
|
||||
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
AccessToken accessToken = ApplicationManager.getApplication().acquireReadActionLock();
|
||||
|
||||
try {
|
||||
|
||||
+1
-1
@@ -66,7 +66,7 @@ import java.util.Map;
|
||||
*/
|
||||
public class RepositoryLibrarySynchronizer implements StartupActivity, DumbAware{
|
||||
@Override
|
||||
public void runActivity(final Project project) {
|
||||
public void runActivity(@NotNull final Project project) {
|
||||
StartupManager.getInstance(project).registerPostStartupActivity(new DumbAwareRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
||||
Reference in New Issue
Block a user