void (UsageInfo @NotNull [] usages) { GroovyPsiElementFactory factory = GroovyPsiElementFactory.getInstance(myProject); //PsiType initializerType = mySettings.getSelectedType(); // Changing external occurrences (the tricky part) IntroduceParameterUtil.processUsages(usages, this); final GrMethod toReplaceIn = (GrMethod)mySettings.getToReplaceIn(); final PsiMethod toSearchFor = (PsiMethod)mySettings.getToSearchFor(); final boolean methodsToProcessAreDifferent = toReplaceIn != toSearchFor; if (mySettings.generateDelegate()) { generateDelegate(toReplaceIn, toSearchFor, methodsToProcessAreDifferent); } // Changing signature of initial method // (signature of myMethodToReplaceIn will be either changed now or have already been changed) //LOG.assertTrue(initializerType == null || initializerType.isValid()); final FieldConflictsResolver fieldConflictsResolver = new FieldConflictsResolver(mySettings.getName(), toReplaceIn.getBlock()); processMethodSignature(usages, toReplaceIn, toSearchFor, methodsToProcessAreDifferent); processUsages(usages, factory); processStringPart(); processVar(); fieldConflictsResolver.fix(); }