How to select multiple java file, generate toString() for all fields in each class in bulk

select multiple java file, generate toString() for all fields in each class  in batches by clicking right click menu.
 
Thanks a lot
0
VirtualFile[] virtualFiles = e.getData(CommonDataKeys.VIRTUAL_FILE_ARRAY);
for (VirtualFile virtualFile : virtualFiles) {
PsiFile psiFile = PsiManager.getInstance(e.getProject()).findFile(virtualFile);
final PsiClass psiClass = PsiTreeUtil.findChildOfAnyType(psiFile.getOriginalElement(), PsiClass.class);
new WriteCommandAction.Simple(psiClass.getProject(), psiClass.getContainingFile()) {
@Override
protected void run() throws Throwable {
//删除已存在的方法
//没有文档,经测试,猜测,第二个参数是表示查找范围是否包含父类
PsiMethod[] pms = psiClass.findMethodsByName("toString", false);
if (pms.length > 0) {
for (PsiMethod pm : pms) {
pm.delete();
}
}
generateToStringImpl(psiClass);
}
}.execute();
}
0

请先登录再写评论。