Commit eec77c63 authored by Alexey Kudravtsev's avatar Alexey Kudravtsev
Browse files

notnull various listeners

parent 94d460b1
Showing with 63 additions and 52 deletions
+63 -52
......@@ -522,7 +522,7 @@ public class CompilerManagerImpl extends CompilerManager {
}
@Override
public void finished(boolean aborted, int errors, int warnings, final CompileContext compileContext) {
public void finished(boolean aborted, int errors, int warnings, @NotNull final CompileContext compileContext) {
if (!myProject.isDisposed()) {
myEventPublisher.compilationFinished(aborted, errors, warnings, compileContext);
}
......
......@@ -53,7 +53,7 @@ public class CompilerReferenceServiceImpl extends CompilerReferenceServiceBase<B
MessageBusConnection connection = myProject.getMessageBus().connect(myProject);
connection.subscribe(BuildManagerListener.TOPIC, new BuildManagerListener() {
@Override
public void buildStarted(Project project, UUID sessionId, boolean isAutomake) {
public void buildStarted(@NotNull Project project, @NotNull UUID sessionId, boolean isAutomake) {
if (project == myProject) {
closeReaderIfNeed(IndexCloseReason.COMPILATION_STARTED);
}
......@@ -62,12 +62,12 @@ public class CompilerReferenceServiceImpl extends CompilerReferenceServiceBase<B
connection.subscribe(CompilerTopics.COMPILATION_STATUS, new CompilationStatusListener() {
@Override
public void compilationFinished(boolean aborted, int errors, int warnings, CompileContext compileContext) {
public void compilationFinished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext) {
compilationFinished(compileContext);
}
@Override
public void automakeCompilationFinished(int errors, int warnings, CompileContext compileContext) {
public void automakeCompilationFinished(int errors, int warnings, @NotNull CompileContext compileContext) {
compilationFinished(compileContext);
}
......
......@@ -83,7 +83,7 @@ class DirtyScopeHolder extends UserDataHolderBase implements BulkFileListener {
connect.subscribe(ProjectTopics.PROJECT_ROOTS, new ModuleRootListener() {
@Override
public void beforeRootsChange(ModuleRootEvent event) {
public void beforeRootsChange(@NotNull ModuleRootEvent event) {
final Module[] modules = ModuleManager.getInstance(myService.getProject()).getModules();
synchronized (myLock) {
ContainerUtil.addAll(myVFSChangedModules, modules);
......
......@@ -240,7 +240,7 @@ public class CompileDriver {
buildManager.cancelAutoMakeTasks(myProject);
return buildManager.scheduleBuild(myProject, compileContext.isRebuild(), compileContext.isMake(), onlyCheckUpToDate, scopes, paths, builderParams, new DefaultMessageHandler(myProject) {
@Override
public void sessionTerminated(final UUID sessionId) {
public void sessionTerminated(@NotNull final UUID sessionId) {
if (compileContext.shouldUpdateProblemsView()) {
final ProblemsView view = ProblemsView.SERVICE.getInstance(myProject);
view.clearProgress();
......@@ -249,7 +249,7 @@ public class CompileDriver {
}
@Override
public void handleFailure(UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
public void handleFailure(@NotNull UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
compileContext.addMessage(CompilerMessageCategory.ERROR, failure.hasDescription()? failure.getDescription() : "", null, -1, -1);
final String trace = failure.hasStacktrace()? failure.getStacktrace() : null;
if (trace != null) {
......
......@@ -90,7 +90,7 @@ public class UnloadedModulesCompilationCheckinHandler extends CheckinHandler {
compilerManager.makeWithModalProgress(new ModuleCompileScope(myProject, affectedModules, affectedUnloadedModules, true, false),
new CompileStatusNotification() {
@Override
public void finished(boolean aborted, int errors, int warnings, CompileContext compileContext) {
public void finished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext) {
result.set(
aborted ? BuildResult.CANCELED : errors > 0 ? BuildResult.FAILED : BuildResult.SUCCESSFUL);
}
......
......@@ -568,7 +568,7 @@ public class CompilerTask extends Task.Backgroundable {
}
@Override
public void contentRemoved(ContentManagerEvent event) {
public void contentRemoved(@NotNull ContentManagerEvent event) {
if (event.getContent() == myContent) {
synchronized (myMessageViewLock) {
if (myErrorTreeView != null) {
......@@ -589,7 +589,7 @@ public class CompilerTask extends Task.Backgroundable {
}
@Override
public void contentRemoveQuery(ContentManagerEvent event) {
public void contentRemoveQuery(@NotNull ContentManagerEvent event) {
if (event.getContent() == myContent) {
if (!myIndicator.isCanceled() && shouldAskUser()) {
int result = Messages.showOkCancelDialog(
......@@ -619,7 +619,7 @@ public class CompilerTask extends Task.Backgroundable {
}
@Override
public void projectClosing(Project project) {
public void projectClosing(@NotNull Project project) {
if (project.equals(myProject)) {
myIsApplicationExitingOrProjectClosing = true;
}
......
......@@ -16,6 +16,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.problems.Problem;
import com.intellij.problems.WolfTheProblemSolver;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.api.CmdlineRemoteProto;
import org.jetbrains.jps.api.GlobalOptions;
......@@ -131,7 +132,7 @@ class AutoMakeMessageHandler extends DefaultMessageHandler {
}
@Override
public void handleFailure(UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
public void handleFailure(@NotNull UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
if (myProject.isDisposed()) {
return;
}
......@@ -145,7 +146,7 @@ class AutoMakeMessageHandler extends DefaultMessageHandler {
}
@Override
public void sessionTerminated(UUID sessionId) {
public void sessionTerminated(@NotNull UUID sessionId) {
String statusMessage = null/*"Auto make completed"*/;
switch (myBuildStatus) {
case SUCCESS:
......
......@@ -896,7 +896,7 @@ public class BuildManager implements Disposable {
return true;
}
private void notifySessionTerminationIfNeeded(UUID sessionId, @Nullable Throwable execFailure) {
private void notifySessionTerminationIfNeeded(@NotNull UUID sessionId, @Nullable Throwable execFailure) {
if (myMessageDispatcher.getAssociatedChannel(sessionId) == null) {
// either the connection has never been established (process not started or execution failed), or no messages were sent from the launched process.
// in this case the session cannot be unregistered by the message dispatcher
......@@ -910,7 +910,7 @@ public class BuildManager implements Disposable {
}
}
private void handleProcessExecutionFailure(UUID sessionId, Throwable e) {
private void handleProcessExecutionFailure(@NotNull UUID sessionId, Throwable e) {
final BuilderMessageHandler unregistered = myMessageDispatcher.unregisterBuildMessageHandler(sessionId);
if (unregistered != null) {
unregistered.handleFailure(sessionId, CmdlineProtoUtil.createFailure(e.getMessage(), e));
......@@ -1006,7 +1006,7 @@ public class BuildManager implements Disposable {
});
}
private OSProcessHandler launchBuildProcess(@NotNull Project project, final int port, final UUID sessionId, boolean requestProjectPreload) throws ExecutionException {
private OSProcessHandler launchBuildProcess(@NotNull Project project, final int port, @NotNull UUID sessionId, boolean requestProjectPreload) throws ExecutionException {
String compilerPath;
final String vmExecutablePath;
JavaSdkVersion sdkVersion = null;
......@@ -1486,7 +1486,7 @@ public class BuildManager implements Disposable {
}
@Override
public void buildStarted(UUID sessionId) {
public void buildStarted(@NotNull UUID sessionId) {
super.buildStarted(sessionId);
try {
ApplicationManager
......@@ -1498,7 +1498,7 @@ public class BuildManager implements Disposable {
}
@Override
public void sessionTerminated(UUID sessionId) {
public void sessionTerminated(@NotNull UUID sessionId) {
try {
super.sessionTerminated(sessionId);
}
......@@ -1547,13 +1547,13 @@ public class BuildManager implements Disposable {
private final Map<Project, MessageBusConnection> myConnections = new HashMap<>();
@Override
public void projectOpened(final Project project) {
public void projectOpened(@NotNull final Project project) {
if (ApplicationManager.getApplication().isUnitTestMode()) return;
final MessageBusConnection conn = project.getMessageBus().connect();
myConnections.put(project, conn);
conn.subscribe(ProjectTopics.PROJECT_ROOTS, new ModuleRootListener() {
@Override
public void rootsChanged(final ModuleRootEvent event) {
public void rootsChanged(@NotNull final ModuleRootEvent event) {
final Object source = event.getSource();
if (source instanceof Project) {
clearState((Project)source);
......@@ -1587,14 +1587,14 @@ public class BuildManager implements Disposable {
private final Set<String> myRootsToRefresh = new THashSet<>(FileUtil.PATH_HASHING_STRATEGY);
@Override
public void automakeCompilationFinished(int errors, int warnings, CompileContext compileContext) {
public void automakeCompilationFinished(int errors, int warnings, @NotNull CompileContext compileContext) {
if (!compileContext.getProgressIndicator().isCanceled()) {
refreshSources(compileContext);
}
}
@Override
public void compilationFinished(boolean aborted, int errors, int warnings, CompileContext compileContext) {
public void compilationFinished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext) {
refreshSources(compileContext);
}
......@@ -1654,7 +1654,7 @@ public class BuildManager implements Disposable {
}
@Override
public void fileGenerated(String outputRoot, String relativePath) {
public void fileGenerated(@NotNull String outputRoot, @NotNull String relativePath) {
synchronized (myRootsToRefresh) {
myRootsToRefresh.add(outputRoot);
}
......@@ -1682,7 +1682,7 @@ public class BuildManager implements Disposable {
}
@Override
public void projectClosing(Project project) {
public void projectClosing(@NotNull Project project) {
cancelPreloadedBuilds(getProjectPath(project));
for (TaskFuture future : cancelAutoMakeTasks(project)) {
future.waitFor(500, TimeUnit.MILLISECONDS);
......
......@@ -2,6 +2,7 @@ package com.intellij.compiler.server;
import com.intellij.openapi.project.Project;
import com.intellij.util.messages.Topic;
import org.jetbrains.annotations.NotNull;
import java.util.UUID;
......@@ -11,9 +12,9 @@ import java.util.UUID;
public interface BuildManagerListener {
Topic<BuildManagerListener> TOPIC = Topic.create("Build Manager", BuildManagerListener.class);
default void beforeBuildProcessStarted(Project project, UUID sessionId) {}
default void beforeBuildProcessStarted(@NotNull Project project, @NotNull UUID sessionId) {}
default void buildStarted(Project project, UUID sessionId, boolean isAutomake) {}
default void buildStarted(@NotNull Project project, @NotNull UUID sessionId, boolean isAutomake) {}
default void buildFinished(Project project, UUID sessionId, boolean isAutomake) {}
default void buildFinished(@NotNull Project project, @NotNull UUID sessionId, boolean isAutomake) {}
}
......@@ -39,7 +39,7 @@ class BuildMessageDispatcher extends SimpleChannelInboundHandlerAdapter<CmdlineR
}
@Override
public void sessionTerminated(UUID sessionId) {
public void sessionTerminated(@NotNull UUID sessionId) {
try {
super.sessionTerminated(sessionId);
}
......@@ -77,13 +77,13 @@ class BuildMessageDispatcher extends SimpleChannelInboundHandlerAdapter<CmdlineR
}
@Nullable
public Channel getConnectedChannel(final UUID sessionId) {
public Channel getConnectedChannel(@NotNull UUID sessionId) {
final Channel channel = getAssociatedChannel(sessionId);
return channel != null && channel.isActive()? channel : null;
}
@Nullable
public Channel getAssociatedChannel(final UUID sessionId) {
public Channel getAssociatedChannel(@NotNull UUID sessionId) {
final SessionData data = mySessionDescriptors.get(sessionId);
return data != null? data.channel : null;
}
......
......@@ -16,6 +16,7 @@
package com.intellij.compiler.server;
import io.netty.channel.Channel;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.api.CmdlineRemoteProto;
import java.util.UUID;
......@@ -26,7 +27,7 @@ import java.util.UUID;
public interface BuilderMessageHandler {
BuilderMessageHandler DEAF = new BuilderMessageHandler() {
@Override
public void buildStarted(UUID sessionId) {
public void buildStarted(@NotNull UUID sessionId) {
}
@Override
......@@ -34,19 +35,19 @@ public interface BuilderMessageHandler {
}
@Override
public void handleFailure(UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
public void handleFailure(@NotNull UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
}
@Override
public void sessionTerminated(UUID sessionId) {
public void sessionTerminated(@NotNull UUID sessionId) {
}
};
void buildStarted(UUID sessionId);
void buildStarted(@NotNull UUID sessionId);
void handleBuildMessage(Channel channel, UUID sessionId, CmdlineRemoteProto.Message.BuilderMessage msg);
void handleFailure(UUID sessionId, CmdlineRemoteProto.Message.Failure failure);
void handleFailure(@NotNull UUID sessionId, CmdlineRemoteProto.Message.Failure failure);
void sessionTerminated(UUID sessionId);
void sessionTerminated(@NotNull UUID sessionId);
}
......@@ -42,7 +42,7 @@ public abstract class DefaultMessageHandler implements BuilderMessageHandler {
}
@Override
public void buildStarted(UUID sessionId) {
public void buildStarted(@NotNull UUID sessionId) {
}
@Override
......
package com.intellij.compiler.server;
import io.netty.channel.Channel;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.api.CmdlineRemoteProto;
import java.util.UUID;
......@@ -13,7 +14,7 @@ abstract class DelegatingMessageHandler implements BuilderMessageHandler {
protected abstract BuilderMessageHandler getDelegateHandler();
@Override
public void buildStarted(UUID sessionId) {
public void buildStarted(@NotNull UUID sessionId) {
getDelegateHandler().buildStarted(sessionId);
}
......@@ -23,12 +24,12 @@ abstract class DelegatingMessageHandler implements BuilderMessageHandler {
}
@Override
public void handleFailure(UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
public void handleFailure(@NotNull UUID sessionId, CmdlineRemoteProto.Message.Failure failure) {
getDelegateHandler().handleFailure(sessionId, failure);
}
@Override
public void sessionTerminated(UUID sessionId) {
public void sessionTerminated(@NotNull UUID sessionId) {
getDelegateHandler().sessionTerminated(sessionId);
}
}
......@@ -15,6 +15,8 @@
*/
package com.intellij.openapi.compiler;
import org.jetbrains.annotations.NotNull;
import java.util.EventListener;
/**
......@@ -31,12 +33,12 @@ public interface CompilationStatusListener extends EventListener {
* @param warnings warning count
* @param compileContext context for the finished compilation
*/
default void compilationFinished(boolean aborted, int errors, int warnings, final CompileContext compileContext){
default void compilationFinished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext){
}
default void automakeCompilationFinished(int errors, int warnings, final CompileContext compileContext) {
default void automakeCompilationFinished(int errors, int warnings, @NotNull CompileContext compileContext) {
}
default void fileGenerated(String outputRoot, String relativePath) {
default void fileGenerated(@NotNull String outputRoot, @NotNull String relativePath) {
}
}
......@@ -15,6 +15,8 @@
*/
package com.intellij.openapi.compiler;
import org.jetbrains.annotations.NotNull;
/**
* A callback interface passed to ComplerManager methods. Provides notification similar to
* {@link CompilationStatusListener}.
......@@ -30,5 +32,5 @@ public interface CompileStatusNotification {
* @param warnings warning count
* @param compileContext context for the finished compilation
*/
void finished(boolean aborted, int errors, int warnings, final CompileContext compileContext);
void finished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext);
}
......@@ -32,6 +32,7 @@ public class DummyCompileContext implements CompileContext {
private static final DummyCompileContext OUR_INSTANCE = new DummyCompileContext();
@NotNull
public static DummyCompileContext getInstance() {
return OUR_INSTANCE;
}
......
......@@ -60,7 +60,7 @@ public abstract class BaseCompilerTestCase extends ModuleTestCase {
super.setUp();
myProject.getMessageBus().connect(getTestRootDisposable()).subscribe(ProjectTopics.PROJECT_ROOTS, new ModuleRootListener() {
@Override
public void rootsChanged(ModuleRootEvent event) {
public void rootsChanged(@NotNull ModuleRootEvent event) {
//todo[nik] projectOpened isn't called in tests so we need to add this listener manually
forceFSRescan();
}
......@@ -225,14 +225,14 @@ public abstract class BaseCompilerTestCase extends ModuleTestCase {
final List<String> generatedFilePaths = new ArrayList<>();
myProject.getMessageBus().connect(getTestRootDisposable()).subscribe(CompilerTopics.COMPILATION_STATUS, new CompilationStatusListener() {
@Override
public void fileGenerated(String outputRoot, String relativePath) {
public void fileGenerated(@NotNull String outputRoot, @NotNull String relativePath) {
generatedFilePaths.add(relativePath);
}
});
UIUtil.invokeAndWaitIfNeeded((Runnable)() -> {
final CompileStatusNotification callback = new CompileStatusNotification() {
@Override
public void finished(boolean aborted, int errors, int warnings, CompileContext compileContext) {
public void finished(boolean aborted, int errors, int warnings, @NotNull CompileContext compileContext) {
try {
if (aborted) {
Assert.fail("compilation aborted");
......
......@@ -28,6 +28,7 @@ import com.intellij.util.ThrowableRunnable;
import com.intellij.util.concurrency.Semaphore;
import junit.framework.AssertionFailedError;
import org.apache.log4j.Level;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.io.IOException;
......@@ -98,7 +99,7 @@ public abstract class CompilerTestCase extends ModuleTestCase {
mySemaphore.down();
doCompile(new CompileStatusNotification() {
@Override
public void finished(boolean aborted, int errors, int warnings, final CompileContext compileContext) {
public void finished(boolean aborted, int errors, int warnings, @NotNull final CompileContext compileContext) {
try {
assertFalse("Code did not compile!", aborted);
if (errors > 0) {
......@@ -152,7 +153,7 @@ public abstract class CompilerTestCase extends ModuleTestCase {
Disposable eventDisposable = Disposer.newDisposable();
myProject.getMessageBus().connect(eventDisposable).subscribe(CompilerTopics.COMPILATION_STATUS, new CompilationStatusListener() {
@Override
public void fileGenerated(String outputRoot, String relativePath) {
public void fileGenerated(@NotNull String outputRoot, @NotNull String relativePath) {
generated.add(relativePath);
}
});
......@@ -160,7 +161,7 @@ public abstract class CompilerTestCase extends ModuleTestCase {
doCompile(new CompileStatusNotification() {
@Override
public void finished(boolean aborted, int errors, int warnings, final CompileContext compileContext) {
public void finished(boolean aborted, int errors, int warnings, @NotNull final CompileContext compileContext) {
Disposer.dispose(eventDisposable);
try {
String prefix = FileUtil.toSystemIndependentName(myModuleRoot.getPath());
......
......@@ -9,6 +9,7 @@ import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.testFramework.PsiTestUtil;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.util.ArrayList;
......@@ -67,7 +68,7 @@ public class RefreshOutputDirectoriesTest extends BaseCompilerTestCase {
PlatformTestUtil.saveProject(getProject());
myProject.getMessageBus().connect(getTestRootDisposable()).subscribe(ProjectTopics.PROJECT_ROOTS, new ModuleRootListener() {
@Override
public void rootsChanged(ModuleRootEvent event) {
public void rootsChanged(@NotNull ModuleRootEvent event) {
myRootsChangedCount++;
}
});
......
......@@ -269,7 +269,7 @@ public class AsyncStacksUtils {
debugProcess.putUserData(key, value);
debugProcess.addDebugProcessListener(new DebugProcessListener() {
@Override
public void processDetached(DebugProcess process, boolean closedByUser) {
public void processDetached(@NotNull DebugProcess process, boolean closedByUser) {
process.putUserData(key, null);
}
});
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment