Skip to content

Commit

Permalink
jooby apt: generate source code #2968
Browse files Browse the repository at this point in the history
- move classes to proper package: `apt`
  • Loading branch information
jknack committed Jun 3, 2024
1 parent 213b202 commit c83e049
Show file tree
Hide file tree
Showing 13 changed files with 57 additions and 68 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
import javax.tools.Diagnostic;

import io.jooby.internal.apt.Annotations;
import io.jooby.internal.apt.MvcRouter;
import io.jooby.internal.apt.Opts;
import io.jooby.internal.newapt.MvcRouter;

public class MvcContext {
private final ProcessingEnvironment processingEnvironment;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@

import com.squareup.javapoet.JavaFile;
import io.jooby.internal.apt.Annotations;
import io.jooby.internal.apt.MvcRouter;
import io.jooby.internal.apt.Opts;
import io.jooby.internal.newapt.MvcRouter;

@SupportedOptions({
Opts.OPT_DEBUG,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import java.util.*;
import java.util.function.Function;
Expand All @@ -16,7 +16,6 @@

import com.squareup.javapoet.CodeBlock;
import io.jooby.apt.MvcContext;
import io.jooby.internal.apt.Annotations;

public class MvcParameter {
private static final Predicate<String> NULLABLE =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import static java.util.Optional.ofNullable;

Expand All @@ -19,7 +19,6 @@
import com.squareup.javapoet.ParameterSpec;
import com.squareup.javapoet.TypeName;
import io.jooby.apt.MvcContext;
import io.jooby.internal.apt.Annotations;

public class MvcRoute {
private final MvcContext context;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import static java.util.Collections.emptyList;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import static java.util.stream.Collectors.joining;

Expand All @@ -19,7 +19,6 @@
import javax.lang.model.element.VariableElement;

import com.squareup.javapoet.CodeBlock;
import io.jooby.internal.apt.Annotations;

public enum ParameterGenerator {
ContextParam("getAttribute", "io.jooby.annotation.ContextParam") {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
Expand All @@ -17,7 +17,6 @@
import javax.lang.model.util.Types;

import io.jooby.apt.MvcContext;
import io.jooby.internal.apt.Opts;

public class RouteAttributesGenerator {
private record EnumValue(String type, String value) {}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.newapt;
package io.jooby.internal.apt;

import java.util.ArrayList;
import java.util.Collections;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Apache License Version 2.0 https://jooby.io/LICENSE.txt
* Copyright 2014 Edgar Espina
*/
package io.jooby.internal.apt;
package io.jooby.apt;

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,17 @@
*/
package io.jooby.apt;

import java.util.Objects;
import java.util.stream.Collectors;
import java.util.stream.Stream;

import javax.annotation.processing.Messager;
import javax.lang.model.element.AnnotationMirror;
import javax.lang.model.element.AnnotationValue;
import javax.lang.model.element.Element;
import javax.tools.Diagnostic;

import com.squareup.javapoet.JavaFile;
import io.jooby.internal.newapt.ConsoleMessager;

public class TestMvcSourceCodeProcessor extends MvcSourceCodeProcessor {
private JavaFile source;
Expand All @@ -29,3 +38,39 @@ protected void onGeneratedSource(JavaFile source) {
this.source = source;
}
}

class ConsoleMessager implements Messager {
@Override
public void printMessage(Diagnostic.Kind kind, CharSequence msg) {
println(kind, msg);
}

@Override
public void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e) {
println(kind, msg, e);
}

@Override
public void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a) {
println(kind, msg, e, " @", a);
}

@Override
public void printMessage(
Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a, AnnotationValue v) {
println(kind, msg, e, " @", a, "=", v);
}

private void println(Diagnostic.Kind kind, CharSequence message, Object... args) {
var out = kind == Diagnostic.Kind.ERROR ? System.err : System.out;
out.println(
kind
+ ": "
+ message
+ " "
+ Stream.of(args)
.filter(Objects::nonNull)
.map(Objects::toString)
.collect(Collectors.joining(" ")));
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,10 @@
import io.jooby.Reified;
import io.jooby.Route;
import io.jooby.StatusCode;
import io.jooby.apt.MockContextHelper;
import io.jooby.apt.NewProcessorRunner;
import io.jooby.exception.MissingValueException;
import io.jooby.exception.ProvisioningException;
import io.jooby.internal.apt.MockContextHelper;
import io.jooby.test.MockContext;
import io.jooby.test.MockRouter;
import source.CustomGenericType;
Expand Down
2 changes: 1 addition & 1 deletion modules/jooby-apt/src/test/java/tests/Issue1387.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
import org.junit.jupiter.api.Test;

import io.jooby.Session;
import io.jooby.apt.MockContextHelper;
import io.jooby.apt.NewProcessorRunner;
import io.jooby.internal.apt.MockContextHelper;
import io.jooby.test.MockContext;
import io.jooby.test.MockRouter;

Expand Down

0 comments on commit c83e049

Please sign in to comment.