From 33ea7473f5d54a76cf618faf61fc4b91e3e9e30a Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Thu, 27 Apr 2017 16:26:17 +0300 Subject: [PATCH] vcs: cleanup - @NotNull --- .../vcs/changes/ChangeListManager.java | 65 +++++++++++-------- .../vcs/changes/ChangeListManagerEx.java | 9 +-- .../vcs/changes/ChangeListManagerImpl.java | 53 ++++++++------- .../openapi/vcs/changes/ChangeListWorker.java | 6 +- .../vcs/changes/ChangeListsIndexes.java | 2 +- .../vcs/MockChangeListManager.java | 47 ++++++++------ 6 files changed, 106 insertions(+), 76 deletions(-) diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ChangeListManager.java b/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ChangeListManager.java index 47a6690f5320..fcaf63f1efbe 100644 --- a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ChangeListManager.java +++ b/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ChangeListManager.java @@ -44,23 +44,29 @@ public abstract class ChangeListManager implements ChangeListModification { public abstract void scheduleUpdate(); public abstract void scheduleUpdate(boolean updateUnversionedFiles); - public abstract void invokeAfterUpdate(final Runnable afterUpdate, final InvokeAfterUpdateMode mode, final String title, - final ModalityState state); - public abstract void invokeAfterUpdate(final Runnable afterUpdate, final InvokeAfterUpdateMode mode, final String title, - final Consumer dirtyScopeManager, - final ModalityState state); + public abstract void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, + @Nullable String title, + @Nullable ModalityState state); + public abstract void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, + @Nullable String title, + @Nullable Consumer dirtyScopeManager, + @Nullable ModalityState state); @TestOnly public abstract boolean ensureUpToDate(boolean canBeCanceled); public abstract int getChangeListsNumber(); + @NotNull public abstract List getChangeListsCopy(); @NotNull public abstract List getChangeLists(); + @NotNull public abstract List getAffectedPaths(); @NotNull public abstract List getAffectedFiles(); - public abstract boolean isFileAffected(final VirtualFile file); + public abstract boolean isFileAffected(@NotNull VirtualFile file); /** * @return all changes in all changelists. @@ -69,16 +75,17 @@ public abstract class ChangeListManager implements ChangeListModification { public abstract Collection getAllChanges(); @Nullable - public abstract LocalChangeList findChangeList(final String name); + public abstract LocalChangeList findChangeList(String name); @Nullable public abstract LocalChangeList getChangeList(String id); -// public abstract LocalChangeList addChangeList(@NotNull String name, final String comment); -// public abstract void setDefaultChangeList(@NotNull LocalChangeList list); + // public abstract LocalChangeList addChangeList(@NotNull String name, final String comment); + // public abstract void setDefaultChangeList(@NotNull LocalChangeList list); /** * Returns currently active changelist * @return active changelist */ + @Nullable public abstract LocalChangeList getDefaultChangeList(); public abstract boolean isDefaultChangeList(ChangeList list); @@ -103,53 +110,59 @@ public abstract class ChangeListManager implements ChangeListModification { public abstract boolean isUnversioned(VirtualFile file); @NotNull - public abstract FileStatus getStatus(VirtualFile file); + public abstract FileStatus getStatus(@NotNull VirtualFile file); @NotNull - public abstract Collection getChangesIn(VirtualFile dir); + public abstract Collection getChangesIn(@NotNull VirtualFile dir); @NotNull - public abstract Collection getChangesIn(FilePath path); + public abstract Collection getChangesIn(@NotNull FilePath path); @Nullable public abstract AbstractVcs getVcsFor(@NotNull Change change); -// public abstract void removeChangeList(final LocalChangeList list); + // public abstract void removeChangeList(final LocalChangeList list); -// public abstract void moveChangesTo(final LocalChangeList list, final Change[] changes); + // public abstract void moveChangesTo(final LocalChangeList list, final Change[] changes); - public abstract void addChangeListListener(ChangeListListener listener); - public abstract void removeChangeListListener(ChangeListListener listener); + public abstract void addChangeListListener(@NotNull ChangeListListener listener); - public abstract void registerCommitExecutor(CommitExecutor executor); - - public abstract void commitChanges(LocalChangeList changeList, List changes); + public abstract void removeChangeListListener(@NotNull ChangeListListener listener); - public abstract void commitChangesSynchronously(LocalChangeList changeList, List changes); + public abstract void registerCommitExecutor(@NotNull CommitExecutor executor); + public abstract void commitChanges(@NotNull LocalChangeList changeList, @NotNull List changes); + + public abstract void commitChangesSynchronously(@NotNull LocalChangeList changeList, @NotNull List changes); /** * @return if commit successful */ - public abstract boolean commitChangesSynchronouslyWithResult(LocalChangeList changeList, List changes); + public abstract boolean commitChangesSynchronouslyWithResult(@NotNull LocalChangeList changeList, @NotNull List changes); - public abstract void reopenFiles(List paths); + @Deprecated // used in TeamCity + public abstract void reopenFiles(@NotNull List paths); + @NotNull public abstract List getRegisteredExecutors(); - public abstract void addFilesToIgnore(final IgnoredFileBean... ignoredFiles); + public abstract void addFilesToIgnore(@NotNull IgnoredFileBean... ignoredFiles); public abstract void addDirectoryToIgnoreImplicitly(@NotNull String path); public abstract void removeImplicitlyIgnoredDirectory(@NotNull String path); - public abstract void setFilesToIgnore(final IgnoredFileBean... ignoredFiles); + public abstract void setFilesToIgnore(@NotNull IgnoredFileBean... ignoredFiles); + @NotNull public abstract IgnoredFileBean[] getFilesToIgnore(); public abstract boolean isIgnoredFile(@NotNull VirtualFile file); @Nullable - public abstract String getSwitchedBranch(VirtualFile file); + public abstract String getSwitchedBranch(@NotNull VirtualFile file); + @Nullable public abstract String getDefaultListName(); + @Nullable public abstract String isFreezed(); public abstract boolean isFreezedWithNotification(@Nullable String modalTitle); - + + @NotNull public abstract List getModifiedWithoutEditing(); @NotNull diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerEx.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerEx.java index 212ce2d088a8..484af503b62b 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerEx.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerEx.java @@ -27,12 +27,13 @@ import java.util.List; */ public abstract class ChangeListManagerEx extends ChangeListManager { @Nullable - public abstract LocalChangeList getIdentityChangeList(Change change); + public abstract LocalChangeList getIdentityChangeList(@NotNull Change change); public abstract boolean isInUpdate(); - public abstract Collection getInvolvedListsFilterChanges(final Collection changes, final List validChanges); + @NotNull + public abstract Collection getInvolvedListsFilterChanges(@NotNull Collection changes, @NotNull List validChanges); - - public abstract LocalChangeList addChangeList(@NotNull String name, @Nullable final String comment, @Nullable Object data); + @NotNull + public abstract LocalChangeList addChangeList(@NotNull String name, @Nullable String comment, @Nullable Object data); /** * Blocks modal dialogs that we don't want to popup during some process, for example, above the commit dialog. diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerImpl.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerImpl.java index f3437f7dedbe..2af83ae05d45 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerImpl.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerImpl.java @@ -342,16 +342,19 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec * so waiting for its completion on AWT thread is not good runnable is invoked on AWT thread */ @Override - public void invokeAfterUpdate(final Runnable afterUpdate, - final InvokeAfterUpdateMode mode, - @Nullable final String title, - @Nullable final ModalityState state) { + public void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, + @Nullable String title, + @Nullable ModalityState state) { myUpdater.invokeAfterUpdate(afterUpdate, mode, title, null, state); } @Override - public void invokeAfterUpdate(final Runnable afterUpdate, final InvokeAfterUpdateMode mode, final String title, - final Consumer dirtyScopeManagerFiller, final ModalityState state) { + public void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, + @Nullable String title, + @Nullable Consumer dirtyScopeManagerFiller, + @Nullable ModalityState state) { myUpdater.invokeAfterUpdate(afterUpdate, mode, title, dirtyScopeManagerFiller, state); } @@ -735,6 +738,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec return before != null && scope.belongsTo(before.getFile()) || after != null && scope.belongsTo(after.getFile()); } + @NotNull @Override public List getChangeListsCopy() { synchronized (myDataLock) { @@ -754,6 +758,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } } + @NotNull @Override public List getAffectedPaths() { synchronized (myDataLock) { @@ -784,6 +789,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } } + @NotNull @Override public List getModifiedWithoutEditing() { synchronized (myDataLock) { @@ -861,7 +867,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } @Override - public boolean isFileAffected(final VirtualFile file) { + public boolean isFileAffected(@NotNull VirtualFile file) { synchronized (myDataLock) { return myWorker.getStatus(file) != null; } @@ -887,6 +893,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec return addChangeList(name, comment, null); } + @NotNull @Override public LocalChangeList addChangeList(@NotNull final String name, @Nullable final String comment, @Nullable final Object data) { return ReadAction.compute(() -> { @@ -939,7 +946,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec @Override @NotNull - public Collection getInvolvedListsFilterChanges(final Collection changes, final List validChanges) { + public Collection getInvolvedListsFilterChanges(@NotNull Collection changes, @NotNull List validChanges) { synchronized (myDataLock) { return myWorker.getInvolvedListsFilterChanges(changes, validChanges); } @@ -965,7 +972,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec */ @Override @Nullable - public LocalChangeList getIdentityChangeList(Change change) { + public LocalChangeList getIdentityChangeList(@NotNull Change change) { synchronized (myDataLock) { final List lists = myWorker.getListsCopy(); for (LocalChangeList list : lists) { @@ -1016,7 +1023,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec @Override @NotNull - public FileStatus getStatus(VirtualFile file) { + public FileStatus getStatus(@NotNull VirtualFile file) { synchronized (myDataLock) { if (myComposite.getVFHolder(FileHolder.HolderType.UNVERSIONED).containsFile(file)) return FileStatus.UNKNOWN; if (myComposite.getVFHolder(FileHolder.HolderType.MODIFIED_WITHOUT_EDITING).containsFile(file)) return FileStatus.HIJACKED; @@ -1034,7 +1041,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec @Override @NotNull - public Collection getChangesIn(VirtualFile dir) { + public Collection getChangesIn(@NotNull VirtualFile dir) { return getChangesIn(VcsUtil.getFilePath(dir)); } @@ -1049,7 +1056,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec @Override @NotNull - public Collection getChangesIn(final FilePath dirPath) { + public Collection getChangesIn(@NotNull FilePath dirPath) { synchronized (myDataLock) { return myWorker.getChangesIn(dirPath); } @@ -1227,23 +1234,23 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } @Override - public void addChangeListListener(ChangeListListener listener) { + public void addChangeListListener(@NotNull ChangeListListener listener) { myListeners.addListener(listener); } @Override - public void removeChangeListListener(ChangeListListener listener) { + public void removeChangeListListener(@NotNull ChangeListListener listener) { myListeners.removeListener(listener); } @Override - public void registerCommitExecutor(CommitExecutor executor) { + public void registerCommitExecutor(@NotNull CommitExecutor executor) { myExecutors.add(executor); } @Override - public void commitChanges(LocalChangeList changeList, List changes) { + public void commitChanges(@NotNull LocalChangeList changeList, @NotNull List changes) { doCommit(changeList, changes, false); } @@ -1255,12 +1262,12 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } @Override - public void commitChangesSynchronously(LocalChangeList changeList, List changes) { + public void commitChangesSynchronously(@NotNull LocalChangeList changeList, @NotNull List changes) { doCommit(changeList, changes, true); } @Override - public boolean commitChangesSynchronouslyWithResult(final LocalChangeList changeList, final List changes) { + public boolean commitChangesSynchronouslyWithResult(@NotNull LocalChangeList changeList, @NotNull List changes) { return doCommit(changeList, changes, true); } @@ -1305,7 +1312,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec // used in TeamCity @Override - public void reopenFiles(List paths) { + public void reopenFiles(@NotNull List paths) { final ReadonlyStatusHandlerImpl readonlyStatusHandler = (ReadonlyStatusHandlerImpl)ReadonlyStatusHandler.getInstance(myProject); final boolean savedOption = readonlyStatusHandler.getState().SHOW_DIALOG; readonlyStatusHandler.getState().SHOW_DIALOG = false; @@ -1317,6 +1324,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } } + @NotNull @Override public List getRegisteredExecutors() { return Collections.unmodifiableList(myExecutors); @@ -1364,7 +1372,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } @Override - public void addFilesToIgnore(final IgnoredFileBean... filesToIgnore) { + public void addFilesToIgnore(@NotNull IgnoredFileBean... filesToIgnore) { myIgnoredIdeaLevel.add(filesToIgnore); scheduleUnversionedUpdate(); } @@ -1398,7 +1406,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } @Override - public void setFilesToIgnore(final IgnoredFileBean... filesToIgnore) { + public void setFilesToIgnore(@NotNull IgnoredFileBean... filesToIgnore) { myIgnoredIdeaLevel.set(filesToIgnore); scheduleUnversionedUpdate(); } @@ -1422,6 +1430,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec } } + @NotNull @Override public IgnoredFileBean[] getFilesToIgnore() { return myIgnoredIdeaLevel.getFilesToIgnore(); @@ -1442,7 +1451,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec @Override @Nullable - public String getSwitchedBranch(final VirtualFile file) { + public String getSwitchedBranch(@NotNull VirtualFile file) { synchronized (myDataLock) { return myComposite.getSwitchedFileHolder().getBranchForFile(file); } diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java index 58a7b2ac4a5c..bbb2e9cb2fa0 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListWorker.java @@ -543,11 +543,11 @@ public class ChangeListWorker implements ChangeListsWriteOperations { return null; } - public FileStatus getStatus(final VirtualFile file) { + public FileStatus getStatus(@NotNull VirtualFile file) { return myIdx.getStatus(file); } - public FileStatus getStatus(final FilePath file) { + public FileStatus getStatus(@NotNull FilePath file) { return myIdx.getStatus(file); } @@ -628,7 +628,7 @@ public class ChangeListWorker implements ChangeListsWriteOperations { } @NotNull - public Collection getChangesIn(final FilePath dirPath) { + public Collection getChangesIn(@NotNull FilePath dirPath) { List changes = new ArrayList<>(); for (ChangeList list : myMap.values()) { for (Change change : list.getChanges()) { diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListsIndexes.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListsIndexes.java index b86c19a26453..0e727ea7d03e 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListsIndexes.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListsIndexes.java @@ -55,7 +55,7 @@ public class ChangeListsIndexes { myMap.remove(file); } - public FileStatus getStatus(final VirtualFile file) { + public FileStatus getStatus(@NotNull VirtualFile file) { return getStatus(VcsUtil.getFilePath(file)); } diff --git a/platform/vcs-impl/testSrc/com/intellij/testFramework/vcs/MockChangeListManager.java b/platform/vcs-impl/testSrc/com/intellij/testFramework/vcs/MockChangeListManager.java index 9a6196245faf..54a78fad73ae 100644 --- a/platform/vcs-impl/testSrc/com/intellij/testFramework/vcs/MockChangeListManager.java +++ b/platform/vcs-impl/testSrc/com/intellij/testFramework/vcs/MockChangeListManager.java @@ -66,16 +66,16 @@ public class MockChangeListManager extends ChangeListManagerEx { } @Override - public void invokeAfterUpdate(Runnable afterUpdate, - InvokeAfterUpdateMode mode, + public void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, String title, ModalityState state) { throw new UnsupportedOperationException(); } @Override - public void invokeAfterUpdate(Runnable afterUpdate, - InvokeAfterUpdateMode mode, + public void invokeAfterUpdate(@NotNull Runnable afterUpdate, + @NotNull InvokeAfterUpdateMode mode, String title, Consumer dirtyScopeManager, ModalityState state) { @@ -93,6 +93,7 @@ public class MockChangeListManager extends ChangeListManagerEx { return getChangeListsCopy().size(); } + @NotNull @Override public List getChangeListsCopy() { return new ArrayList<>(myChangeLists.values()); @@ -104,6 +105,7 @@ public class MockChangeListManager extends ChangeListManagerEx { return getChangeListsCopy(); } + @NotNull @Override public List getAffectedPaths() { throw new UnsupportedOperationException(); @@ -116,7 +118,7 @@ public class MockChangeListManager extends ChangeListManagerEx { } @Override - public boolean isFileAffected(VirtualFile file) { + public boolean isFileAffected(@NotNull VirtualFile file) { throw new UnsupportedOperationException(); } @@ -194,19 +196,19 @@ public class MockChangeListManager extends ChangeListManagerEx { @NotNull @Override - public FileStatus getStatus(VirtualFile file) { + public FileStatus getStatus(@NotNull VirtualFile file) { throw new UnsupportedOperationException(); } @NotNull @Override - public Collection getChangesIn(VirtualFile dir) { + public Collection getChangesIn(@NotNull VirtualFile dir) { return getChangesIn(VcsUtil.getFilePath(dir)); } @NotNull @Override - public Collection getChangesIn(FilePath path) { + public Collection getChangesIn(@NotNull FilePath path) { List changes = new ArrayList<>(); for (Change change : getAllChanges()) { ContentRevision before = change.getBeforeRevision(); @@ -231,47 +233,48 @@ public class MockChangeListManager extends ChangeListManagerEx { } @Override - public void addChangeListListener(ChangeListListener listener) { + public void addChangeListListener(@NotNull ChangeListListener listener) { throw new UnsupportedOperationException(); } @Override - public void removeChangeListListener(ChangeListListener listener) { + public void removeChangeListListener(@NotNull ChangeListListener listener) { throw new UnsupportedOperationException(); } @Override - public void registerCommitExecutor(CommitExecutor executor) { + public void registerCommitExecutor(@NotNull CommitExecutor executor) { throw new UnsupportedOperationException(); } @Override - public void commitChanges(LocalChangeList changeList, List changes) { + public void commitChanges(@NotNull LocalChangeList changeList, @NotNull List changes) { throw new UnsupportedOperationException(); } @Override - public void commitChangesSynchronously(LocalChangeList changeList, List changes) { + public void commitChangesSynchronously(@NotNull LocalChangeList changeList, @NotNull List changes) { throw new UnsupportedOperationException(); } @Override - public boolean commitChangesSynchronouslyWithResult(LocalChangeList changeList, List changes) { + public boolean commitChangesSynchronouslyWithResult(@NotNull LocalChangeList changeList, @NotNull List changes) { throw new UnsupportedOperationException(); } @Override - public void reopenFiles(List paths) { + public void reopenFiles(@NotNull List paths) { throw new UnsupportedOperationException(); } + @NotNull @Override public List getRegisteredExecutors() { throw new UnsupportedOperationException(); } @Override - public void addFilesToIgnore(IgnoredFileBean... ignoredFiles) { + public void addFilesToIgnore(@NotNull IgnoredFileBean... ignoredFiles) { throw new UnsupportedOperationException(); } @@ -286,10 +289,11 @@ public class MockChangeListManager extends ChangeListManagerEx { } @Override - public void setFilesToIgnore(IgnoredFileBean... ignoredFiles) { + public void setFilesToIgnore(@NotNull IgnoredFileBean... ignoredFiles) { throw new UnsupportedOperationException(); } + @NotNull @Override public IgnoredFileBean[] getFilesToIgnore() { throw new UnsupportedOperationException(); @@ -301,7 +305,7 @@ public class MockChangeListManager extends ChangeListManagerEx { } @Override - public String getSwitchedBranch(VirtualFile file) { + public String getSwitchedBranch(@NotNull VirtualFile file) { throw new UnsupportedOperationException(); } @@ -328,6 +332,7 @@ public class MockChangeListManager extends ChangeListManagerEx { throw new UnsupportedOperationException(); } + @NotNull @Override public List getModifiedWithoutEditing() { throw new UnsupportedOperationException("Not implemented"); @@ -379,7 +384,7 @@ public class MockChangeListManager extends ChangeListManagerEx { @Nullable @Override - public LocalChangeList getIdentityChangeList(Change change) { + public LocalChangeList getIdentityChangeList(@NotNull Change change) { throw new UnsupportedOperationException(); } @@ -388,11 +393,13 @@ public class MockChangeListManager extends ChangeListManagerEx { throw new UnsupportedOperationException(); } + @NotNull @Override - public Collection getInvolvedListsFilterChanges(Collection changes, List validChanges) { + public Collection getInvolvedListsFilterChanges(@NotNull Collection changes, @NotNull List validChanges) { throw new UnsupportedOperationException(); } + @NotNull @Override public LocalChangeList addChangeList(@NotNull String name, @Nullable String comment, @Nullable Object data) { return addChangeList(name, comment);