pull/11/head
Markus Kreth 1 year ago
parent 9306a3987e
commit 5985320b97
  1. 5
      src/main/java/de/kreth/property2java/Configuration.java
  2. 12
      src/main/java/de/kreth/property2java/Generator.java
  3. 6
      src/main/java/de/kreth/property2java/cli/CliConfig.java
  4. 2
      src/main/java/de/kreth/property2java/processor/GenerateResourceBundleProperty2Javas.java
  5. 20
      src/main/java/de/kreth/property2java/processor/Property2JavaGenerator.java

@ -53,10 +53,7 @@ public interface Configuration {
default String mapFilenameToClassName(String fileName) { default String mapFilenameToClassName(String fileName) {
String path = Regex.PATTERN.matcher(fileName) String path = Regex.PATTERN.matcher(fileName).replaceAll(".").replaceAll("\\.", "_").replaceAll(" ", "_")
.replaceAll(".")
.replaceAll("\\.", "_")
.replaceAll(" ", "_")
.replaceAll("/", "_"); .replaceAll("/", "_");
path = WordUtils.capitalize(path, '_'); path = WordUtils.capitalize(path, '_');
return path; return path;

@ -100,15 +100,9 @@ public class Generator {
ArgumentConfiguration.Builder config = new ArgumentConfiguration.Builder(); ArgumentConfiguration.Builder config = new ArgumentConfiguration.Builder();
rescources rescources.stream().map(URL::getFile).map(File::new).map(File::getAbsolutePath).forEach(config::addPropFile);
.stream()
.map(URL::getFile) config.setPackageName(locationClass.getPackageName()).setTarget(relativeTargetDir);
.map(File::new)
.map(File::getAbsolutePath)
.forEach(config::addPropFile);
config.setPackageName(locationClass.getPackageName())
.setTarget(relativeTargetDir);
Generator g = new Generator(config.build()); Generator g = new Generator(config.build());
g.start(); g.start();

@ -35,12 +35,10 @@ public class CliConfig {
for (String value : cmd.getOptionValues("f")) { for (String value : cmd.getOptionValues("f")) {
builder.addPropFile(value); builder.addPropFile(value);
} }
} } catch (MissingOptionException e) {
catch (MissingOptionException e) {
printHelp(); printHelp();
throw new IllegalStateException(e); throw new IllegalStateException(e);
} } catch (ParseException e) {
catch (ParseException e) {
throw new IOException("Unable to parse Arguments", e); throw new IOException("Unable to parse Arguments", e);
} }
} }

@ -15,7 +15,7 @@ import java.lang.annotation.Target;
*/ */
@Target(ElementType.TYPE) @Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME) @Retention(RetentionPolicy.RUNTIME)
public @interface GenerateResourceBundleProperty2Javas { @interface GenerateResourceBundleProperty2Javas {
GenerateResourceBundleProperty2Java[] value(); GenerateResourceBundleProperty2Java[] value();
} }

@ -31,18 +31,15 @@ public class Property2JavaGenerator extends AbstractProcessor {
processGenerateProperty2Java(roundEnv); processGenerateProperty2Java(roundEnv);
processGenerateResourceBundleProperty2Javas(roundEnv); processGenerateResourceBundleProperty2Javas(roundEnv);
} else { } else {
processingEnv.getMessager().printMessage(Kind.NOTE, processingEnv.getMessager().printMessage(Kind.NOTE, "finished working on annotation " + annotations);
"finished working on annotation " + annotations);
} }
return true; return true;
} }
private void processGenerateProperty2Java(RoundEnvironment roundEnv) { private void processGenerateProperty2Java(RoundEnvironment roundEnv) {
processingEnv.getMessager().printMessage(Kind.NOTE, processingEnv.getMessager().printMessage(Kind.NOTE, "Processing annotation " + GenerateProperty2Java.class);
"Processing annotation " + GenerateProperty2Java.class);
Set<? extends Element> elementsAnnotatedWith = roundEnv Set<? extends Element> elementsAnnotatedWith = roundEnv.getElementsAnnotatedWith(GenerateProperty2Java.class);
.getElementsAnnotatedWith(GenerateProperty2Java.class);
for (Element element : elementsAnnotatedWith) { for (Element element : elementsAnnotatedWith) {
GenerateProperty2Java generateAnnotation = element.getAnnotation(GenerateProperty2Java.class); GenerateProperty2Java generateAnnotation = element.getAnnotation(GenerateProperty2Java.class);
@ -71,20 +68,15 @@ public class Property2JavaGenerator extends AbstractProcessor {
} }
private void generateElementProperties(Element element, List<String> resources, Format format) { private void generateElementProperties(Element element, List<String> resources, Format format) {
processingEnv.getMessager().printMessage(Kind.NOTE, processingEnv.getMessager().printMessage(Kind.NOTE, "Generating Java for " + Arrays.asList(resources));
"Generating Java for " + Arrays.asList(resources));
try { try {
ProcessorConfiguration ProcessorConfiguration.builder(processingEnv.getFiler(), element).addAll(resources).withFormat(format)
.builder(processingEnv.getFiler(), element)
.addAll(resources)
.withFormat(format)
.startGeneration(); .startGeneration();
} catch (IOException | GeneratorException e) { } catch (IOException | GeneratorException e) {
StringWriter out = new StringWriter(); StringWriter out = new StringWriter();
e.printStackTrace(new PrintWriter(out)); e.printStackTrace(new PrintWriter(out));
out.flush(); out.flush();
processingEnv.getMessager().printMessage(Kind.ERROR, "Exception " + e + "\n" + out.toString(), processingEnv.getMessager().printMessage(Kind.ERROR, "Exception " + e + "\n" + out.toString(), element);
element);
} }
} }

Loading…
Cancel
Save