PsiMethod (final PsiClass aClass, final PsiMethod patternMethod, boolean canAddOverride) { try { final PsiMethod method = (PsiMethod)aClass.add(patternMethod); ChangeContextUtil.decodeContextInfo(method, null, null); if (canAddOverride && OverrideImplementUtil.isInsertOverride(method, aClass)) { method.getModifierList().addAnnotation(CommonClassNames.JAVA_LANG_OVERRIDE); } return method; } catch (IncorrectOperationException e) { LOG.error(e); return null; } }