From 83ef9687f8c783347a997cb7af366d3cd9ae0ad0 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Sat, 2 May 2020 22:04:06 +0300 Subject: [PATCH] notnull GitOrigin-RevId: 520a991d3f64c48f6a2f68391e06c5b062cf1d23 --- .../DetectedJavaChangeInfo.java | 2 +- .../changeSignature/JavaChangeInfo.java | 4 ++- .../changeSignature/JavaChangeInfoImpl.java | 23 ++++++++----- .../JavaChangeSignatureHandler.java | 4 +-- .../changeSignature/JavaMethodDescriptor.java | 19 ++++++----- .../JavaIntroduceParameterObjectDelegate.java | 5 +-- .../com/intellij/ide/CopyPasteDelegator.java | 4 +-- .../ChangeSignatureDialogBase.java | 3 +- .../changeSignature/MethodDescriptor.java | 5 +++ .../ParameterTableModelBase.java | 3 +- ...bstractIntroduceParameterObjectDialog.java | 4 ++- .../IntroduceParameterObjectDelegate.java | 4 +-- .../impl/RefactoringTransaction.java | 6 ++-- .../MoveFilesOrDirectoriesProcessor.java | 34 +++++++++---------- .../changeSignature/GrChangeInfoImpl.java | 12 +++---- .../changeSignature/GrMethodDescriptor.java | 10 +++--- ...roovyIntroduceParameterObjectDelegate.java | 5 +-- .../quickfix/PyChangeSignatureQuickFix.java | 2 +- .../changeSignature/PyMethodDescriptor.java | 10 +++--- 19 files changed, 91 insertions(+), 68 deletions(-) diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/DetectedJavaChangeInfo.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/DetectedJavaChangeInfo.java index a2728c34a758..8e8fcfc5bcda 100644 --- a/java/java-impl/src/com/intellij/refactoring/changeSignature/DetectedJavaChangeInfo.java +++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/DetectedJavaChangeInfo.java @@ -39,7 +39,7 @@ class DetectedJavaChangeInfo extends JavaChangeInfoImpl { CanonicalTypes.Type newType, ParameterInfoImpl @NotNull [] newParms, ThrownExceptionInfo[] newExceptions, - String newName, String oldName, final boolean delegate) { + String newName, @NotNull String oldName, final boolean delegate) { super(newVisibility, method, newName, newType, newParms, newExceptions, delegate, new HashSet<>(), new HashSet<>(), oldName); final PsiParameter[] parameters = method.getParameterList().getParameters(); myModifiers = new String[parameters.length]; diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfo.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfo.java index 8eacb212bb39..d539255a0063 100644 --- a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfo.java +++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfo.java @@ -32,6 +32,7 @@ public interface JavaChangeInfo extends ChangeInfo { boolean isExceptionSetOrOrderChanged(); @Override + @NotNull PsiMethod getMethod(); CanonicalTypes.Type getNewReturnType(); @@ -65,8 +66,9 @@ public interface JavaChangeInfo extends ChangeInfo { PsiExpression getValue(int i, PsiCallExpression callExpression); - void updateMethod(PsiMethod psiMethod); + void updateMethod(@NotNull PsiMethod psiMethod); + @NotNull Collection getMethodsToPropagateParameters(); default boolean checkUnusedParameter() { diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfoImpl.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfoImpl.java index 136cd991c138..a3e7432f6bf6 100644 --- a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfoImpl.java +++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeInfoImpl.java @@ -38,11 +38,14 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange @PsiModifier.ModifierConstant @NotNull private final String newVisibility; + @NotNull private PsiMethod method; + @NotNull private final String oldName; private final String oldType; String[] oldParameterNames; String[] oldParameterTypes; + @NotNull private final String newName; final CanonicalTypes.Type newReturnType; final ParameterInfoImpl[] newParms; @@ -75,7 +78,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange */ public JavaChangeInfoImpl(@PsiModifier.ModifierConstant @NotNull String newVisibility, @NotNull PsiMethod method, - String newName, + @NotNull String newName, CanonicalTypes.Type newType, ParameterInfoImpl @NotNull [] newParms, ThrownExceptionInfo @Nullable [] newExceptions, @@ -91,14 +94,14 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange */ public JavaChangeInfoImpl(@PsiModifier.ModifierConstant @NotNull String newVisibility, @NotNull PsiMethod method, - String newName, + @NotNull String newName, CanonicalTypes.Type newType, ParameterInfoImpl @NotNull [] newParms, ThrownExceptionInfo @Nullable [] newExceptions, boolean generateDelegate, @NotNull Set propagateParametersMethods, @NotNull Set propagateExceptionsMethods, - String oldName) { + @NotNull String oldName) { PsiElementFactory factory = JavaPsiFacade.getElementFactory(method.getProject()); this.newVisibility = newVisibility; @@ -288,7 +291,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange } @Override - public PsiMethod getMethod() { + public @NotNull PsiMethod getMethod() { return method; } @@ -298,16 +301,16 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange } @Override - public void updateMethod(PsiMethod method) { + public void updateMethod(@NotNull PsiMethod method) { this.method = method; } @Override - public Collection getMethodsToPropagateParameters() { + public @NotNull Collection getMethodsToPropagateParameters() { return propagateParametersMethods; } - public ParameterInfoImpl[] getCreatedParmsInfoWithoutVarargs() { + public ParameterInfoImpl @NotNull [] getCreatedParmsInfoWithoutVarargs() { List result = new ArrayList<>(); for (ParameterInfoImpl newParm : newParms) { if (newParm.oldParameterIndex < 0 && !newParm.isVarargType()) { @@ -341,6 +344,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange } @Override + @NotNull public String getNewName() { return newName; } @@ -411,6 +415,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange } @Override + @NotNull public String getOldName() { return oldName; } @@ -461,7 +466,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange : that.newReturnType != null) { return false; } - if (newVisibility != null ? !newVisibility.equals(that.newVisibility) : that.newVisibility != null) return false; + if (!newVisibility.equals(that.newVisibility)) return false; if (!oldName.equals(that.oldName)) return false; if (!Arrays.equals(oldParameterNames, that.oldParameterNames)) return false; if (!Arrays.equals(oldParameterTypes, that.oldParameterTypes)) return false; @@ -475,7 +480,7 @@ public class JavaChangeInfoImpl extends UserDataHolderBase implements JavaChange @Override public int hashCode() { - int result = newVisibility != null ? newVisibility.hashCode() : 0; + int result = newVisibility.hashCode(); if (checkMethodEquality()) { result = 31 * result + method.hashCode(); } diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureHandler.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureHandler.java index 39adfac10ab7..0111b90327a2 100644 --- a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureHandler.java +++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureHandler.java @@ -108,12 +108,12 @@ public class JavaChangeSignatureHandler implements ChangeSignatureHandler { } @Override - public List getParameters() { + public @NotNull List getParameters() { return Arrays.asList((ParameterInfoImpl[])currentInfo.getNewParameters()); } @Override - public String getVisibility() { + public @NotNull String getVisibility() { return currentInfo.getNewVisibility(); } diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaMethodDescriptor.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaMethodDescriptor.java index b47a3ee63323..ee4644fda70c 100644 --- a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaMethodDescriptor.java +++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaMethodDescriptor.java @@ -1,11 +1,13 @@ // Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.refactoring.changeSignature; -import com.intellij.psi.*; +import com.intellij.psi.PsiMethod; +import com.intellij.psi.PsiParameter; +import com.intellij.psi.PsiType; +import com.intellij.psi.PsiTypeElement; import com.intellij.psi.util.AccessModifier; -import com.intellij.psi.util.JavaPsiRecordUtil; -import com.intellij.psi.util.PsiUtil; import com.intellij.util.VisibilityUtil; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; @@ -13,9 +15,10 @@ import java.util.List; public class JavaMethodDescriptor implements MethodDescriptor { + @NotNull private final PsiMethod myMethod; - public JavaMethodDescriptor(PsiMethod method) { + public JavaMethodDescriptor(@NotNull PsiMethod method) { myMethod = method; } @@ -25,7 +28,7 @@ public class JavaMethodDescriptor implements MethodDescriptor getParameters() { + public @NotNull List getParameters() { final ArrayList result = new ArrayList<>(); final PsiParameter[] parameters = myMethod.getParameterList().getParameters(); for (int i = 0; i < parameters.length; i++) { @@ -38,12 +41,12 @@ public class JavaMethodDescriptor implements MethodDescriptor { @Override - public List getAllMethodParameters(PsiMethod sourceMethod) { + public List getAllMethodParameters(@NotNull PsiMethod sourceMethod) { return new JavaMethodDescriptor(sourceMethod).getParameters(); } @@ -157,7 +158,7 @@ public class JavaIntroduceParameterObjectDelegate } @Override - public ChangeInfo createChangeSignatureInfo(PsiMethod method, List newParameterInfos, boolean delegate) { + public ChangeInfo createChangeSignatureInfo(PsiMethod method, List newParameterInfos, boolean delegate) { PsiType returnType = method.getReturnType(); return new JavaChangeInfoImpl(VisibilityUtil.getVisibilityModifier(method.getModifierList()), method, diff --git a/platform/lang-impl/src/com/intellij/ide/CopyPasteDelegator.java b/platform/lang-impl/src/com/intellij/ide/CopyPasteDelegator.java index 764c1b38709c..a01c482b73d7 100644 --- a/platform/lang-impl/src/com/intellij/ide/CopyPasteDelegator.java +++ b/platform/lang-impl/src/com/intellij/ide/CopyPasteDelegator.java @@ -74,7 +74,7 @@ public class CopyPasteDelegator implements CopyPasteSupport { return myEditable; } - private class MyEditable implements CutProvider, CopyProvider, PasteProvider { + class MyEditable implements CutProvider, CopyProvider, PasteProvider { @Override public void performCopy(@NotNull DataContext dataContext) { PsiElement[] elements = getValidSelectedElements(); @@ -129,7 +129,7 @@ public class CopyPasteDelegator implements CopyPasteSupport { } } - private boolean performDefaultPaste(final DataContext dataContext) { + boolean performDefaultPaste(@NotNull DataContext dataContext) { final boolean[] isCopied = new boolean[1]; final PsiElement[] elements = PsiCopyPasteManager.getInstance().getElements(isCopied); if (elements == null) return false; diff --git a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ChangeSignatureDialogBase.java b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ChangeSignatureDialogBase.java index 087712fec28a..583e0b05916e 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ChangeSignatureDialogBase.java +++ b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ChangeSignatureDialogBase.java @@ -32,7 +32,6 @@ import com.intellij.ui.table.TableView; import com.intellij.ui.treeStructure.Tree; import com.intellij.util.Alarm; import com.intellij.util.Consumer; -import com.intellij.util.IJSwingUtilities; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.UIUtil; import com.intellij.util.ui.table.JBListTable; @@ -137,7 +136,7 @@ public abstract class ChangeSignatureDialogBase parameterInfos) { + public void setParameterInfos(@NotNull List parameterInfos) { myParametersTableModel.setParameterInfos(parameterInfos); updateSignature(); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/MethodDescriptor.java b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/MethodDescriptor.java index 1f8b204cffbb..6cd30c771f08 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/MethodDescriptor.java +++ b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/MethodDescriptor.java @@ -16,6 +16,7 @@ package com.intellij.refactoring.changeSignature; import com.intellij.psi.PsiElement; +import org.jetbrains.annotations.NotNull; import java.util.List; @@ -25,12 +26,15 @@ public interface MethodDescriptor

{ String getName(); + @NotNull List

getParameters(); int getParametersCount(); + @NotNull V getVisibility(); + @NotNull PsiElement getMethod(); boolean canChangeVisibility(); @@ -39,5 +43,6 @@ public interface MethodDescriptor

{ boolean canChangeName(); + @NotNull ReadWriteOption canChangeReturnType(); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ParameterTableModelBase.java b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ParameterTableModelBase.java index f9e20b275fdf..ebb7ba78998a 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ParameterTableModelBase.java +++ b/platform/lang-impl/src/com/intellij/refactoring/changeSignature/ParameterTableModelBase.java @@ -12,6 +12,7 @@ import com.intellij.refactoring.ui.StringTableCellEditor; import com.intellij.ui.*; import com.intellij.util.ui.ColumnInfo; import com.intellij.util.ui.ListTableModel; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; @@ -41,7 +42,7 @@ public abstract class ParameterTableModelBase

parameterInfos) { + public void setParameterInfos(@NotNull List parameterInfos) { List items = new ArrayList<>(parameterInfos.size()); for (P parameterInfo : parameterInfos) { items.add(createRowItem(parameterInfo)); diff --git a/platform/lang-impl/src/com/intellij/refactoring/introduceParameterObject/AbstractIntroduceParameterObjectDialog.java b/platform/lang-impl/src/com/intellij/refactoring/introduceParameterObject/AbstractIntroduceParameterObjectDialog.java index df79a33a0a0f..995e72b3193e 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/introduceParameterObject/AbstractIntroduceParameterObjectDialog.java +++ b/platform/lang-impl/src/com/intellij/refactoring/introduceParameterObject/AbstractIntroduceParameterObjectDialog.java @@ -23,6 +23,7 @@ import com.intellij.refactoring.changeSignature.ParameterInfo; import com.intellij.refactoring.ui.RefactoringDialog; import com.intellij.refactoring.util.AbstractParameterTablePanel; import com.intellij.refactoring.util.AbstractVariableData; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; @@ -33,6 +34,7 @@ public abstract class AbstractIntroduceParameterObjectDialog, V extends AbstractVariableData> extends RefactoringDialog { + @NotNull protected M mySourceMethod; private JPanel myWholePanel; private JTextField mySourceMethodTextField; @@ -52,7 +54,7 @@ public abstract class AbstractIntroduceParameterObjectDialog getAllMethodParameters(M sourceMethod); + public abstract List

getAllMethodParameters(@NotNull M sourceMethod); /** * Resulted parameter info should implement {@link ParameterInfo#getActualValue(PsiElement, Object)} so the call site would be updated with actual values. @@ -100,7 +100,7 @@ public abstract class IntroduceParameterObjectDelegate newParameterInfos, + List newParameterInfos, boolean delegate); /** diff --git a/platform/lang-impl/src/com/intellij/refactoring/listeners/impl/RefactoringTransaction.java b/platform/lang-impl/src/com/intellij/refactoring/listeners/impl/RefactoringTransaction.java index a44c05b73fbd..14bbe16c1b21 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/listeners/impl/RefactoringTransaction.java +++ b/platform/lang-impl/src/com/intellij/refactoring/listeners/impl/RefactoringTransaction.java @@ -16,8 +16,9 @@ package com.intellij.refactoring.listeners.impl; -import com.intellij.psi.*; +import com.intellij.psi.PsiElement; import com.intellij.refactoring.listeners.RefactoringElementListener; +import org.jetbrains.annotations.NotNull; /** * @author dsl @@ -27,7 +28,8 @@ public interface RefactoringTransaction { * Returns listener for element (element must belong to set of affected elements). * Refactorings should call appropriate methods of a listener, giving a modified (or new) element. */ - RefactoringElementListener getElementListener(PsiElement element); + @NotNull + RefactoringElementListener getElementListener(@NotNull PsiElement element); /** * diff --git a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesProcessor.java b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesProcessor.java index 89c824e86257..b793cc1ba2e9 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesProcessor.java +++ b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesProcessor.java @@ -29,6 +29,7 @@ import com.intellij.usageView.UsageInfo; import com.intellij.usageView.UsageViewDescriptor; import com.intellij.util.IncorrectOperationException; import com.intellij.util.ObjectUtils; +import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -39,7 +40,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { private static final Logger LOG = Logger.getInstance(MoveFilesOrDirectoriesProcessor.class); protected final PsiElement[] myElementsToMove; - protected final boolean mySearchForReferences; + private final boolean mySearchForReferences; protected final boolean mySearchInComments; protected final boolean mySearchInNonJavaFiles; private final PsiDirectory myNewParent; @@ -47,9 +48,9 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { private NonCodeUsageInfo[] myNonCodeUsages; private final Map> myFoundUsages = new HashMap<>(); - public MoveFilesOrDirectoriesProcessor(Project project, - PsiElement[] elements, - PsiDirectory newParent, + public MoveFilesOrDirectoriesProcessor(@NotNull Project project, + PsiElement @NotNull [] elements, + @NotNull PsiDirectory newParent, boolean searchInComments, boolean searchInNonJavaFiles, MoveCallback moveCallback, @@ -57,9 +58,9 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { this(project, elements, newParent, true, searchInComments, searchInNonJavaFiles, moveCallback, prepareSuccessfulCallback); } - public MoveFilesOrDirectoriesProcessor(Project project, - PsiElement[] elements, - PsiDirectory newParent, + public MoveFilesOrDirectoriesProcessor(@NotNull Project project, + PsiElement @NotNull [] elements, + @NotNull PsiDirectory newParent, boolean searchForReferences, boolean searchInComments, boolean searchInNonJavaFiles, @@ -82,7 +83,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { @Override protected UsageInfo @NotNull [] findUsages() { - ArrayList result = new ArrayList<>(); + List result = new ArrayList<>(); for (int i = 0; i < myElementsToMove.length; i++) { PsiElement element = myElementsToMove[i]; if (mySearchForReferences) { @@ -96,13 +97,13 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { return result.toArray(UsageInfo.EMPTY_ARRAY); } - private void findElementUsages(ArrayList result, PsiElement element) { + private void findElementUsages(@NotNull List result, @NotNull PsiElement element) { if (!mySearchForReferences) { return; } if (element instanceof PsiFile) { final List usages = MoveFileHandler.forElement((PsiFile)element) - .findUsages(((PsiFile)element), myNewParent, mySearchInComments, mySearchInNonJavaFiles); + .findUsages((PsiFile)element, myNewParent, mySearchInComments, mySearchInNonJavaFiles); if (usages != null) { result.addAll(usages); myFoundUsages.put((PsiFile)element, usages); @@ -151,10 +152,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { } } - RefactoringElementListener[] listeners = - Arrays.stream(myElementsToMove) - .map(item -> getTransaction().getElementListener(item)) - .toArray(RefactoringElementListener[]::new); + List listeners = ContainerUtil.map(myElementsToMove, item -> getTransaction().getElementListener(item)); for (int i = 0; i < myElementsToMove.length; i++) { PsiElement element = myElementsToMove[i]; @@ -180,7 +178,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { } } - listeners[i].elementMoved(element); + listeners.get(i).elementMoved(element); } // sort by offset descending to process correctly several usages in one PsiElement [IDEADEV-33013] CommonRefactoringUtil.sortDepthFirstRightLeftOrder(usages); @@ -243,7 +241,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { return data; } - private static void encodeDirectoryFiles(PsiElement psiElement, Map movedFiles) { + private static void encodeDirectoryFiles(@NotNull PsiElement psiElement, @NotNull Map movedFiles) { if (psiElement instanceof PsiFile) { movedFiles.put((PsiFile)psiElement, ((PsiFile)psiElement).getNode()); FileReferenceContextUtil.encodeFileReferences(psiElement); @@ -255,7 +253,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { } } - private static void processDirectoryFiles(Map movedFiles, Map oldToNewMap, PsiElement psiElement) { + private static void processDirectoryFiles(@NotNull Map movedFiles, @NotNull Map oldToNewMap, @NotNull PsiElement psiElement) { if (psiElement instanceof PsiFile) { final PsiFile movedFile = (PsiFile)psiElement; movedFiles.put(movedFile, movedFile.getNode()); @@ -268,7 +266,7 @@ public class MoveFilesOrDirectoriesProcessor extends BaseRefactoringProcessor { } } - protected void retargetUsages(UsageInfo[] usages, Map oldToNewMap) { + protected void retargetUsages(UsageInfo @NotNull [] usages, @NotNull Map oldToNewMap) { final List nonCodeUsages = new ArrayList<>(); for (UsageInfo usageInfo : usages) { if (usageInfo instanceof MyUsageInfo) { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrChangeInfoImpl.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrChangeInfoImpl.java index 113f610148ef..da0ab733ace2 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrChangeInfoImpl.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrChangeInfoImpl.java @@ -39,8 +39,8 @@ import java.util.Objects; * @author Maxim.Medvedev */ public class GrChangeInfoImpl implements JavaChangeInfo { - GrMethod method; - final String newName; + private GrMethod method; + private final String newName; @Nullable private final CanonicalTypes.Type returnType; private final String visibilityModifier; private final List parameters; @@ -64,7 +64,7 @@ public class GrChangeInfoImpl implements JavaChangeInfo { private final String[] myOldParameterNames; private final String[] myOldParameterTypes; - public GrChangeInfoImpl(GrMethod method, + public GrChangeInfoImpl(@NotNull GrMethod method, @Nullable String visibilityModifier, @Nullable CanonicalTypes.Type returnType, String newName, @@ -271,7 +271,7 @@ public class GrChangeInfoImpl implements JavaChangeInfo { } @Override - public GrMethod getMethod() { + public @NotNull GrMethod getMethod() { return method; } @@ -353,14 +353,14 @@ public class GrChangeInfoImpl implements JavaChangeInfo { } @Override - public void updateMethod(PsiMethod psiMethod) { + public void updateMethod(@NotNull PsiMethod psiMethod) { if (psiMethod instanceof GrMethod) { method = (GrMethod)psiMethod; } } @Override - public Collection getMethodsToPropagateParameters() { + public @NotNull Collection getMethodsToPropagateParameters() { return Collections.emptyList(); } } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrMethodDescriptor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrMethodDescriptor.java index 38991562caa4..bbb398c5ca6f 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrMethodDescriptor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/changeSignature/GrMethodDescriptor.java @@ -18,6 +18,7 @@ package org.jetbrains.plugins.groovy.refactoring.changeSignature; import com.intellij.psi.PsiClass; import com.intellij.refactoring.changeSignature.MethodDescriptor; import com.intellij.util.VisibilityUtil; +import org.jetbrains.annotations.NotNull; import org.jetbrains.plugins.groovy.lang.psi.api.statements.params.GrParameter; import org.jetbrains.plugins.groovy.lang.psi.api.statements.typedef.members.GrMethod; import org.jetbrains.plugins.groovy.lang.psi.api.types.GrTypeElement; @@ -31,7 +32,7 @@ import java.util.List; public class GrMethodDescriptor implements MethodDescriptor { private final GrMethod myMethod; - public GrMethodDescriptor(GrMethod method) { + public GrMethodDescriptor(@NotNull GrMethod method) { myMethod = method; } @@ -41,7 +42,7 @@ public class GrMethodDescriptor implements MethodDescriptor getParameters() { + public @NotNull List getParameters() { final ArrayList result = new ArrayList<>(); final GrParameter[] parameters = myMethod.getParameters(); for (int i = 0; i < parameters.length; i++) { @@ -58,11 +59,12 @@ public class GrMethodDescriptor implements MethodDescriptor getAllMethodParameters(GrMethod sourceMethod) { + public List getAllMethodParameters(@NotNull GrMethod sourceMethod) { return new GrMethodDescriptor(sourceMethod).getParameters(); } @@ -95,7 +96,7 @@ public class GroovyIntroduceParameterObjectDelegate } @Override - public ChangeInfo createChangeSignatureInfo(GrMethod method, List newParameterInfos, boolean delegate) { + public ChangeInfo createChangeSignatureInfo(GrMethod method, List newParameterInfos, boolean delegate) { final PsiType returnType = method.getReturnType(); return new GrChangeInfoImpl(method, VisibilityUtil.getVisibilityModifier(method.getModifierList()), diff --git a/python/src/com/jetbrains/python/inspections/quickfix/PyChangeSignatureQuickFix.java b/python/src/com/jetbrains/python/inspections/quickfix/PyChangeSignatureQuickFix.java index 69da2663df61..4ebeb6f3bf15 100644 --- a/python/src/com/jetbrains/python/inspections/quickfix/PyChangeSignatureQuickFix.java +++ b/python/src/com/jetbrains/python/inspections/quickfix/PyChangeSignatureQuickFix.java @@ -208,7 +208,7 @@ public class PyChangeSignatureQuickFix extends LocalQuickFixOnPsiElement { private PyMethodDescriptor createMethodDescriptor(final PyFunction function) { return new PyMethodDescriptor(function) { @Override - public List getParameters() { + public @NotNull List getParameters() { final List result = new ArrayList<>(); final List originalParams = super.getParameters(); final PeekingIterator> extra = Iterators.peekingIterator(myExtraParameters.iterator()); diff --git a/python/src/com/jetbrains/python/refactoring/changeSignature/PyMethodDescriptor.java b/python/src/com/jetbrains/python/refactoring/changeSignature/PyMethodDescriptor.java index 880ff85b04dd..fb24f4e4f651 100644 --- a/python/src/com/jetbrains/python/refactoring/changeSignature/PyMethodDescriptor.java +++ b/python/src/com/jetbrains/python/refactoring/changeSignature/PyMethodDescriptor.java @@ -21,6 +21,7 @@ import com.jetbrains.python.psi.PyExpression; import com.jetbrains.python.psi.PyFunction; import com.jetbrains.python.psi.PyNamedParameter; import com.jetbrains.python.psi.PyParameter; +import org.jetbrains.annotations.NotNull; import java.util.ArrayList; import java.util.List; @@ -32,7 +33,7 @@ import java.util.List; public class PyMethodDescriptor implements MethodDescriptor { private final PyFunction myFunction; - public PyMethodDescriptor(PyFunction function) { + public PyMethodDescriptor(@NotNull PyFunction function) { myFunction = function; } @@ -42,7 +43,7 @@ public class PyMethodDescriptor implements MethodDescriptor getParameters() { + public @NotNull List getParameters() { List parameterInfos = new ArrayList<>(); PyParameter[] parameters = myFunction.getParameterList().getParameters(); for (int i = 0; i < parameters.length; i++) { @@ -75,11 +76,12 @@ public class PyMethodDescriptor implements MethodDescriptor