Refine search
private static void adjustLocalFavoriteInfo() throws Exception { JavaClassSource javaClass = Roaster.parse(JavaClassSource.class, new File(LOCAL_FAVORITE_INFO_PATH)); javaClass.removeField(javaClass.getField("gid")); javaClass.removeField(javaClass.getField("token")); javaClass.removeField(javaClass.getField("title")); javaClass.removeField(javaClass.getField("titleJpn")); "\t\tsuper(in);\n" + "\t\tthis.time = in.readLong();\n" + "\t}").setConstructor(true); javaClass.addField("\tpublic static final Creator<LocalFavoriteInfo> CREATOR = new Creator<LocalFavoriteInfo>() {\n" + "\t\t@Override\n" + "\t\tthis.simpleTags = galleryInfo.simpleTags;\n" + "\t\tthis.simpleLanguage = galleryInfo.simpleLanguage;\n" + "\t}").setConstructor(true); javaClass.addImport("com.hippo.ehviewer.client.data.GalleryInfo");
JavaClassSource decoratorClass = Roaster.create(JavaClassSource.class) .setName(decoratorClassName) .setPackage(javaSource.getPackage()); if (javaSource instanceof Importer) for (Import i : imports) decoratorClass.addImport(i); MethodSource<JavaClassSource> constructor = decoratorClass.addMethod() .setPublic().setConstructor(true); constructor.addParameter(javaSource, "delegate"); constructor.setBody("this.delegate = delegate;");
String builderClassName = javaClass.getName() + "Builder"; JavaClassSource builderClass = Roaster.create(JavaClassSource.class) .setName(builderClassName) .setPackage(javaClass.getPackage()); for (Import i : javaClass.getImports()) .setLiteralInitializer("new " + javaClass.getName() + "();"); builderClass.addMethod() .setPublic().setStatic(true).setName("create").setReturnType(builderClass) .setBody("return new " + builderClassName + "();"); builderClass.addMethod()
private void createRestModuleAutoConfigurationSource(String packageName, OtherModel model) throws MojoFailureException { final JavaClassSource javaClass = Roaster.create(JavaClassSource.class); final int pos = model.getJavaType().lastIndexOf("."); final String name = model.getJavaType().substring(pos + 1) + "AutoConfiguration"; final String configType = model.getJavaType().substring(pos + 1) + "Properties"; javaClass.setPackage(packageName); javaClass.setName(name); javaClass.getJavaDoc().setFullText(doc); javaClass.addAnnotation(Generated.class).setStringValue("value", SpringBootAutoConfigurationMojo.class.getName()); method = javaClass.addMethod(); method.setName("configure" + model.getShortJavaType()); method.setPublic(); method.addThrows(Exception.class); method.setReturnType("org.apache.camel.spi.RestConfiguration"); method.addAnnotation(Lazy.class);
private JavaClassSource getOrCreateSubresourceClass(ClassPlan plan, JavaClassSource javaClass) { JavaClassSource subresourceClass = plan.getSubresourceClass(); if (subresourceClass != null) { return subresourceClass; } subresourceClass = Roaster.parse( JavaClassSource.class, "class " + javaClass.getName() + "Resources" + " {}" ); subresourceClass.setPackage(plan.getPackageName()); subresourceClass.getJavaDoc().setText("Child mutators for " + javaClass.getName()); subresourceClass.setPublic(); subresourceClass.setStatic(true); javaClass.addField() .setPrivate() .setType(subresourceClass.getName()) .setName("subresources") .setLiteralInitializer("new " + subresourceClass.getName() + "();"); final MethodSource<JavaClassSource> subresourcesMethod = javaClass.addMethod() .setName("subresources") .setPublic(); subresourcesMethod.setReturnType(subresourceClass.getName()); subresourcesMethod.setBody("return this.subresources;"); javaClass.addImport("java.util.List"); javaClass.addImport(Subresource.class); plan.setSubresourceClass(subresourceClass); return subresourceClass; }
final String dataformatName = (overrideDataFormatName != null ? overrideDataFormatName : model.getName()).toLowerCase(Locale.US); final JavaClassSource javaClass = Roaster.create(JavaClassSource.class); javaClass.setPackage(packageName); javaClass.setName(name); javaClass.getJavaDoc().setFullText("Generated by camel-package-maven-plugin - do not edit this file!"); javaClass.addAnnotation(Generated.class).setStringValue("value", SpringBootAutoConfigurationMojo.class.getName()); javaClass.addAnnotation(Configuration.class); javaClass.addNestedType( Roaster.create(JavaClassSource.class) .setName("GroupConditions") .setStatic(true) .setPackagePrivate() .extendSuperType(Roaster.create(JavaClassSource.class).setName("GroupCondition")) .addMethod() .setName("GroupConditions") .setConstructor(true) .setPublic() .setBody("super(\"camel.dataformat\", \"camel.dataformat." + dataformatName + "\");") .getOrigin()
}}; JavaClassSource javaVerticleTestClass = Roaster.create(JavaClassSource.class) .setPackage(topLevelPackage) .setAbstract(false) .setName(testClassName); testImports.forEach(javaVerticleTestClass::addImport); .addMethod() .setName("setup") .setBody( "vertx = Vertx.vertx();\nvertx.deployVerticle("+className+".class.getName(), context.asyncAssertSuccess());") .setPublic() .setReturnTypeVoid();
JavaClassSource javaClass = Roaster.create(JavaClassSource.class).setName(named.getValue()) .setPackage(packageName.getValue()); javaClass.addImport("org.jboss.arquillian.container.test.api.Deployment"); javaClass.addImport("org.jboss.arquillian.junit.Arquillian"); javaClass.addImport("org.jboss.forge.arquillian.AddonDependency"); MethodSource<JavaClassSource> getDeployment = javaClass.addMethod().setName("getDeployment").setPublic() .setStatic(true) .setBody("return ShrinkWrap.create(AddonArchive.class).addBeansXML();").setReturnType("AddonArchive"); getDeployment.addAnnotation("Deployment");
JavaClassSource commonClass = Roaster.create(JavaClassSource.class); commonClass.setPackage(packageName); commonClass.setName(commonName); doc = model.getDescription() + "\n\n" + doc; commonClass.getJavaDoc().setFullText(doc); commonClass.addAnnotation(Generated.class).setStringValue("value", SpringBootAutoConfigurationMojo.class.getName()); JavaClassSource configClass = Roaster.create(JavaClassSource.class); configClass.setPackage(packageName); configClass.setName(configName); method = configClass.addMethod(); method.setName("getConfigurations"); method.setReturnType("Map<String, " + commonName + ">"); method.setPublic(); method.setBody("return configurations;");
public JavaEnumSource create(ClassIndex index, EnumPlan plan) { final JavaEnumSource enumType = Roaster.create(JavaEnumSource.class) .setName(plan.getClassName()) .setPublic(); .getJavaDoc() .setText("Returns the allowed value for the management model.") .addTagValue("@return", "the allowed model value"); .setConstructor(true); constructor.addParameter(String.class, "allowedValue"); constructor.setBody("this.allowedValue = allowedValue;");
final String pkg = moduleName.substring(0, moduleName.lastIndexOf('.')); final JavaClassSource javaClass = Roaster.create(JavaClassSource.class); javaClass.setPackage(pkg).setName(starterName); javaClass.extendSuperType(AbstractModuleStarter.class); if (!javaClass.hasMethodSignature("start")) { final MethodSource<?> method = javaClass.addMethod() .setName("start") .setPublic() .setBody(body.toString()) .setReturnTypeVoid(); method.getJavaDoc().setFullText("{@inheritDoc}");
private String addJavaVerticle(Project project, String packageName, String className, boolean isMain) { JavaSourceFacet source = project.getFacet(JavaSourceFacet.class); String topLevelPackage; if (packageName == null) { topLevelPackage = source.getBasePackage(); } else { topLevelPackage = packageName; } if (className.endsWith(".java")) { className = className.substring(0, className.length() - ".java".length()); } JavaClassSource mainVerticle = Roaster.create(JavaClassSource.class) .setPackage(topLevelPackage) .setAbstract(false) .setName(className) .setSuperType("io.vertx.core.AbstractVerticle"); mainVerticle .addImport("io.vertx.core.*"); mainVerticle.addMethod().setName("start").setBody( "vertx.createHttpServer().requestHandler(req -> req.response().end(\"Hello World!\")).listen(8080);") .setPublic() .addAnnotation(Override.class); JavaResource resource = source.saveJavaSource(mainVerticle.getEnclosingType()); if (isMain) { ForgeUtils.addPropertyToProject(project, "vertx.verticle", topLevelPackage + "." + className); } addJavaVerticleTest(project,packageName,className); return resource.toString(); }
JavaClassSource restEndpoint = Roaster.create(JavaClassSource.class) .setPackage(facet.getBasePackage() + ".rest") .setName("HelloWorldEndpoint"); if (hasCDI(installedFractions)) restEndpoint.addAnnotation(ApplicationScoped.class); restEndpoint.addAnnotation(Path.class).setStringValue("/hello"); MethodSource<JavaClassSource> method = restEndpoint.addMethod().setPublic().setReturnType(Response.class) .setName("doGet") .setBody("return Response.ok(\"Hello from WildFly Swarm!\").build();"); method.addAnnotation(GET.class);
public static JavaClassSource createGreetingClass(JavaClassSource current) { JavaClassSource source = Roaster.create(JavaClassSource.class).setName("Greeting").setPackage(current.getPackage()); source.addMethod().setPublic().setConstructor(true).setBody("this.id = 0;this.content = null;"); source.addMethod().setPublic().setConstructor(true).setParameters("long id, String content").setBody("this.id = id; this.content = content;"); source.addProperty(String.class, "content"); source.addProperty("long", "id"); Roaster.format(source.toString()); return source; }
public MethodImpl(final O parent, final String method) { init(parent); String stub = "public class Stub { " + method + " }"; JavaClassSource temp = (JavaClassSource) Roaster.parse(stub); List<MethodSource<JavaClassSource>> methods = temp.getMethods(); MethodDeclaration newMethod = (MethodDeclaration) methods.get(0).getInternal(); MethodDeclaration subtree = (MethodDeclaration) ASTNode.copySubtree(cu.getAST(), newMethod); this.method = subtree; }
final String[] packageParts = Arrays.copyOfRange(nameParts, 0, classNameIndex); final String packageName = StringUtils.join(packageParts, "."); final JavaClassSource source = Roaster.create(JavaClassSource.class); final File packageDir = new File(srcFolderName + File.separatorChar + packageName.replace('.', File.separatorChar)); source.setFinal(true).setPublic(); final String normalizedKey = key.replaceAll("[\\.-]", "_"); final String value = properties.getProperty(key); final FieldSource<JavaClassSource> field = source.addField(); source.addMethod().setPrivate().setConstructor(true).setBody("super();");
public static org.eclipse.jdt.core.dom.Type fromString(String resolvedType, AST ast) { String stub = "public class Stub { " + resolvedType + " field; }"; JavaClassSource temp = (JavaClassSource) Roaster.parse(stub); List<FieldSource<JavaClassSource>> fields = temp.getFields(); org.eclipse.jdt.core.dom.Type fieldType = ((FieldDeclaration) ((VariableDeclarationFragment) fields.get(0) .getInternal()).getParent()).getType(); return (org.eclipse.jdt.core.dom.Type) ASTNode.copySubtree(ast, fieldType); } }
private void createDataFormatConfigurationSource(String packageName, DataFormatModel model, String overrideDataFormatName) throws MojoFailureException { final JavaClassSource javaClass = Roaster.create(JavaClassSource.class); javaClass.setPackage(packageName).setName(name); javaClass.extendSuperType(Roaster.create(JavaClassSource.class).setName("DataFormatConfigurationPropertiesCommon")); javaClass.addImport("org.apache.camel.spring.boot.DataFormatConfigurationPropertiesCommon"); if ("true".equals(option.getDeprecated())) { prop.getField().addAnnotation(Deprecated.class); prop.getAccessor().addAnnotation(Deprecated.class); prop.getMutator().addAnnotation(Deprecated.class); prop.getAccessor().addAnnotation(DeprecatedConfigurationProperty.class);
@Override public Result execute(UIExecutionContext context) throws Exception { Map<Object, Object> attributeMap = context.getUIContext().getAttributeMap(); Project project = (Project) attributeMap.get(Project.class); if (project.hasFacet(JavaSourceFacet.class)) { JavaSourceFacet facet = project.getFacet(JavaSourceFacet.class); MetadataFacet metadata = project.getFacet(MetadataFacet.class); if (createMain.getValue()) { JavaClassSource javaClass = Roaster .create(JavaClassSource.class) .setPackage(facet.getBasePackage()) .setName("Main") .addMethod("public static void main(String[] args) {}") .setBody("System.out.println(\"Hi there! I was forged as part of the project you call " + metadata.getProjectName() + ".\");") .getOrigin(); facet.saveJavaSource(javaClass); } } return null; } }
/** * Parse the given String data into a new {@link JavaType} instance. * * @param data the data to parse * @return the new {@link JavaType} instance * @throws ParserException if no parser is capable of parsing the provided data * @throws IllegalStateException if no parser is available in the classPath */ public static JavaType<?> parse(final String data) { return parse(JavaType.class, data); }