Remove annotations dep from core
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Johannes Frohnmeyer 2022-12-14 17:24:57 +01:00
parent 1e59c062ea
commit 7beb838e0f
Signed by: Johannes
GPG Key ID: E76429612C2929F4
14 changed files with 24 additions and 20 deletions

View File

@ -10,7 +10,6 @@ repositories {
}
dependencies {
implementation(project(":gson-compile-annotations"))
implementation("org.jetbrains:annotations:23.0.0")
implementation("io.gitlab.jfronny:commons:1.0-SNAPSHOT")
}

View File

@ -1,13 +1,14 @@
package io.gitlab.jfronny.gson.compile.processor.core.value;
import io.gitlab.jfronny.gson.compile.annotations.GPrefer;
import javax.annotation.processing.ProcessingEnvironment;
import javax.lang.model.element.*;
import javax.lang.model.util.ElementFilter;
import java.lang.annotation.Annotation;
import java.util.*;
public class ValueCreator {
public static Class<? extends Annotation> preferAnnotation = null;
private final ProcessingEnvironment env;
public ValueCreator(ProcessingEnvironment env) {
@ -141,13 +142,15 @@ public class ValueCreator {
}
if (constructors.size() == 1) return constructors[0];
if (noArgConstructor != null) constructors.add(noArgConstructor);
List<ExecutableElement> preferred = new ArrayList<>();
for (ExecutableElement constructor : constructors) {
if (constructor.getAnnotationsByType(GPrefer.class).length != 0) {
preferred.add(constructor);
if (preferAnnotation != null) {
List<ExecutableElement> preferred = new ArrayList<>();
for (ExecutableElement constructor : constructors) {
if (constructor.getAnnotationsByType(preferAnnotation).length != 0) {
preferred.add(constructor);
}
}
if (preferred.size() == 1) return preferred[0];
}
if (preferred.size() == 1) return preferred[0];
List<ElementException.Message> messages = new ArrayList<>();
messages.add(new ElementException.Message("More than one constructor or factory method found.", klazz));
constructors.stream().map(s -> new ElementException.Message(" " + s, s)).forEach(messages::add);

View File

@ -1,4 +1,4 @@
package io.gitlab.jfronny.gson.compile.processor.util;
package io.gitlab.jfronny.gson.compile.processor;
import com.squareup.javapoet.ClassName;

View File

@ -2,14 +2,15 @@ package io.gitlab.jfronny.gson.compile.processor;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.commons.StringFormatter;
import io.gitlab.jfronny.gson.compile.annotations.GPrefer;
import io.gitlab.jfronny.gson.compile.annotations.GSerializable;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapter;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapters;
import io.gitlab.jfronny.gson.compile.processor.core.AbstractProcessor2;
import io.gitlab.jfronny.gson.compile.processor.core.SupportedAnnotationTypes2;
import io.gitlab.jfronny.gson.compile.processor.core.value.ElementException;
import io.gitlab.jfronny.gson.compile.processor.core.value.ValueCreator;
import io.gitlab.jfronny.gson.compile.processor.gprocessor.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.StringListComparator;
import javax.annotation.processing.*;
@ -32,6 +33,7 @@ public class GsonCompileProcessor extends AbstractProcessor2 {
@Override
public synchronized void init(ProcessingEnvironment processingEnv) {
super.init(processingEnv);
ValueCreator.preferAnnotation = GPrefer.class;
seen = new LinkedHashMap<>();
for (Adapter adapter : Adapters.ADAPTERS) {
adapter.init(processingEnv);

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.gson.compile.processor.adapter;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import javax.lang.model.type.TypeMirror;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapter;

View File

@ -2,7 +2,7 @@ package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.commons.data.MutCollection;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapter;

View File

@ -2,7 +2,7 @@ package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.CodeBlock;
import com.squareup.javapoet.MethodSpec;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapter;
import javax.lang.model.element.Modifier;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.adapter.AdapterAdapter;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapter;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.gson.compile.processor.adapter.impl;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import io.gitlab.jfronny.gson.compile.processor.adapter.AdapterAdapter;
import javax.lang.model.element.Modifier;

View File

@ -3,7 +3,7 @@ package io.gitlab.jfronny.gson.compile.processor.gprocessor;
import com.squareup.javapoet.*;
import io.gitlab.jfronny.gson.compile.processor.SerializableClass;
import io.gitlab.jfronny.gson.compile.processor.core.value.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import javax.annotation.processing.Messager;
import javax.lang.model.element.AnnotationMirror;

View File

@ -5,7 +5,7 @@ import io.gitlab.jfronny.gson.compile.processor.SerializableClass;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapters;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.core.value.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import javax.annotation.processing.Messager;
import javax.lang.model.element.Modifier;

View File

@ -5,7 +5,7 @@ import io.gitlab.jfronny.gson.compile.processor.SerializableClass;
import io.gitlab.jfronny.gson.compile.processor.adapter.Adapters;
import io.gitlab.jfronny.gson.compile.processor.core.TypeHelper;
import io.gitlab.jfronny.gson.compile.processor.core.value.*;
import io.gitlab.jfronny.gson.compile.processor.util.Cl;
import io.gitlab.jfronny.gson.compile.processor.Cl;
import javax.annotation.processing.Messager;
import javax.lang.model.element.Modifier;