private ClassTree addSetters(GenerationUtils gu, TreeMaker make, TypeElement typeElement, ClassTree newClassTree) throws IOException { for (int i = 0; i < attributes.length; i++) { MethodTree setter = gu.createPropertySetterMethod(typeElement, gu.createModifiers(Modifier.PUBLIC), (String) attributes[i][0], (String) attributes[i][1]); newClassTree = make.addClassMember(newClassTree, setter); //TODO: generate Javadoc } return newClassTree; }
private ClassTree createMethodsOlderVersion(Collection<String> classNames, TreeMaker maker,ClassTree modified, CompilationController controller) throws IOException { WildcardTree wildCard = maker.Wildcard(Tree.Kind.UNBOUNDED_WILDCARD, null); ParameterizedTypeTree wildClass = maker.ParameterizedType( maker.QualIdent(Class.class.getCanonicalName()), Collections.singletonList(wildCard)); ParameterizedTypeTree wildSet = maker.ParameterizedType( maker.QualIdent(Set.class.getCanonicalName()), Collections.singletonList(wildClass)); //StringBuilder builder = new StringBuilder(); String methodBody = MiscPrivateUtilities.collectRestResources(classNames, restSupport, true); ModifiersTree modifiersTree = maker.Modifiers(EnumSet .of(Modifier.PRIVATE)); MethodTree methodTree = maker.Method(modifiersTree, GET_REST_RESOURCE_CLASSES, wildSet, Collections.<TypeParameterTree> emptyList(), Collections.<VariableTree> emptyList(), Collections.<ExpressionTree> emptyList(), methodBody, null); modified = maker.addClassMember(modified, methodTree); return modified; }
maker.addComment(methodTree, comment, true); return maker.addClassMember(classTree, methodTree);
null ); modifiedClass = make.addClassMember(modifiedClass, infMethod); "{}", null); modifiedClass = make.addClassMember(modifiedClass, infMethod); "{}", null); modifiedClass = make.addClassMember(modifiedClass, infMethod); "{}", null); modifiedClass = make.addClassMember(modifiedClass, infMethod); "{}", null); modifiedClass = make.addClassMember(modifiedClass, infMethod); workingCopy.rewrite(javaClass, modifiedClass);
modifiedClassTree = make.addClassMember(classTree, newMethod); } else { modifiedClassTree = make.insertClassMember(classTree, insertIndex, newMethod);
public void run(WorkingCopy workingCopy) throws IOException { workingCopy.toPhase(JavaSource.Phase.RESOLVED); GenerationUtils generationUtils = GenerationUtils.newInstance(workingCopy); TypeElement converterTypeElement = SourceUtils.getPublicTopLevelElement(workingCopy); ClassTree classTree = workingCopy.getTrees().getTree(converterTypeElement); ClassTree modifiedClassTree = generationUtils.addImplementsClause(classTree, "javax.faces.convert.Converter"); MethodTree getAsObjectTree = MethodModelSupport.createMethodTree(workingCopy, getAsObject); MethodTree getIdTree = embeddable[0] ? MethodModelSupport.createMethodTree(workingCopy, getId) : null; MethodTree getAsStringTree = MethodModelSupport.createMethodTree(workingCopy, getAsString); modifiedClassTree = workingCopy.getTreeMaker().addClassMember(modifiedClassTree, getAsObjectTree); if (embeddable[0]) { modifiedClassTree = workingCopy.getTreeMaker().addClassMember(modifiedClassTree, getIdTree); } modifiedClassTree = workingCopy.getTreeMaker().addClassMember(modifiedClassTree, getAsStringTree); if (embeddable[0]) { String[] importFqs = {"java.util.regex.Pattern", "java.util.regex.Matcher", jpaControllerClass }; CompilationUnitTree modifiedImportCut = null; for (String importFq : importFqs) { modifiedImportCut = JpaControllerUtil.TreeMakerUtils.createImport(workingCopy, modifiedImportCut, importFq); } } workingCopy.rewrite(classTree, modifiedClassTree); } }).commit();
public void run(WorkingCopy workingCopy) throws Exception { workingCopy.toPhase(Phase.RESOLVED); TreeMaker make = workingCopy.getTreeMaker(); GenerationUtils gu = GenerationUtils.newInstance(workingCopy); TypeElement typeElement = SourceUtils.getPublicTopLevelElement(workingCopy); ClassTree oldClassTree = workingCopy.getTrees().getTree(typeElement); ClassTree classTree = addFields(gu, make, typeElement, oldClassTree); if (isBodyTag) { classTree = make.addClassMember(classTree, addBodyEvaluatorCheck(evaluateBody, make)); } classTree = addSetters(gu, make, typeElement, classTree); workingCopy.rewrite(oldClassTree, classTree); } };
null ); modifiedClass = make.addClassMember(modifiedClass, getMethod); wc.rewrite(clazz, modifiedClass); null ); modifiedClass = make.addClassMember(modifiedClass, setMethod); wc.rewrite(clazz, modifiedClass);
null ); modifiedClass = make.addClassMember(modifiedClass, getMethod); wc.rewrite(clazz, modifiedClass); null ); modifiedClass = make.addClassMember(modifiedClass, setMethod); wc.rewrite(clazz, modifiedClass);
newClassTree = make.removeClassMember(newClassTree, constructorTree); newClassTree = make.addClassMember(newClassTree, newConstructorTree);
public Object run(WorkingCopy wc) { Method m = getMethod(wc, cm.getName(), cm.getParameterTypes(), kind); if(m == null) { TreeMaker make = wc.getTreeMaker(); TypeElement typeElement = typeElementHandle.resolve(wc); ClassTree ctree = wc.getTrees().getTree(typeElement); ClassTree newctree = ctree; MethodTree mtree = TreeMakerUtils.createMethod(wc, cm, retType); newctree = make.addClassMember(ctree, mtree); wc.rewrite(ctree, newctree); } return m; } }, fObj);
null ); ClassTree modifiedClass = make.addClassMember(clazz, removeMethod); wc.rewrite(clazz, modifiedClass);
null ); ClassTree modifiedClass = make.addClassMember(clazz, addMethod); wc.rewrite(clazz, modifiedClass);