From 28cb5031d005ce45a1a45e76218993a913baa79f Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 22 Jan 2018 16:53:28 +0300 Subject: [PATCH] nullability checks --- .../JavaMoveClassesOrPackagesHandler.java | 3 ++- .../MoveClassesOrPackagesToNewDirectoryDialog.java | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/JavaMoveClassesOrPackagesHandler.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/JavaMoveClassesOrPackagesHandler.java index 17fa05b478c9..94834f031bbb 100644 --- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/JavaMoveClassesOrPackagesHandler.java +++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/JavaMoveClassesOrPackagesHandler.java @@ -45,13 +45,13 @@ import com.intellij.refactoring.util.CommonRefactoringUtil; import com.intellij.refactoring.util.RadioUpDownListener; import com.intellij.refactoring.util.RefactoringUtil; import com.intellij.util.IncorrectOperationException; -import java.util.HashSet; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.awt.*; import java.util.Arrays; +import java.util.HashSet; public class JavaMoveClassesOrPackagesHandler extends MoveHandlerDelegate { private static final Logger LOG = Logger.getInstance(JavaMoveClassesOrPackagesHandler.class); @@ -221,6 +221,7 @@ public class JavaMoveClassesOrPackagesHandler extends MoveHandlerDelegate { boolean searchInComments, boolean searchForTextOccurences) { final MoveDestination destination = createDestination(aPackage, targetDirectory); + if (destination == null) return null; try { for (PsiDirectory dir: directories) { MoveFilesOrDirectoriesUtil.checkIfMoveIntoSelf(dir, WriteAction.compute(() -> destination.getTargetDirectory(dir))); diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesToNewDirectoryDialog.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesToNewDirectoryDialog.java index 8df6f855b6ea..293b7e1fbaa6 100644 --- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesToNewDirectoryDialog.java +++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesToNewDirectoryDialog.java @@ -216,6 +216,7 @@ public class MoveClassesOrPackagesToNewDirectoryDialog extends MoveDialogBase { boolean searchInComments, boolean searchForTextOccurences) { final MoveDestination destination = createDestination(aPackage, directory); + if (destination == null) return null; MoveClassesOrPackagesProcessor processor = createMoveClassesOrPackagesProcessor(myDirectory.getProject(), myElementsToMove, destination, searchInComments, searchForTextOccurences, myMoveCallback); @@ -227,6 +228,7 @@ public class MoveClassesOrPackagesToNewDirectoryDialog extends MoveDialogBase { return null; } + @Nullable protected MoveDestination createDestination(PsiPackage aPackage, PsiDirectory directory) { final Project project = aPackage.getProject(); final VirtualFile sourceRoot = ProjectRootManager.getInstance(project).getFileIndex().getSourceRootForFile(directory.getVirtualFile());