PsiClass (final Project project, final PsiClass subclass, final ExtractSuperclassDialog dialog) { final String superclassName = dialog.getExtractedSuperName(); final PsiDirectory targetDirectory = dialog.getTargetDirectory(); final MemberInfo[] selectedMemberInfos = dialog.getSelectedMemberInfos().toArray(new MemberInfo[0]); final DocCommentPolicy javaDocPolicy = new DocCommentPolicy(dialog.getDocCommentPolicy()); LocalHistoryAction a = LocalHistory.getInstance().startAction(getCommandName(subclass, superclassName)); try { return ExtractSuperClassUtil.extractSuperClass(project, targetDirectory, superclassName, subclass, selectedMemberInfos, javaDocPolicy); } finally { a.finish(); } }