aboutsummaryrefslogtreecommitdiffstats
path: root/javaparser-core-generators/src/main/java
diff options
context:
space:
mode:
authorDanny van Bruggen <hexagonaal@gmail.com>2017-04-23 01:20:09 +0200
committerDanny van Bruggen <hexagonaal@gmail.com>2017-04-23 01:20:09 +0200
commitc9f2a4fe27453e09a268730cd0ab76a42016475f (patch)
treeacb76cab82ba23e407d414a678798f4eefaa1f4e /javaparser-core-generators/src/main/java
parenta0950452a16fa9ed5e16ec8bd0750617f1dae35d (diff)
downloadplatform_external_javaparser-c9f2a4fe27453e09a268730cd0ab76a42016475f.tar.gz
platform_external_javaparser-c9f2a4fe27453e09a268730cd0ab76a42016475f.tar.bz2
platform_external_javaparser-c9f2a4fe27453e09a268730cd0ab76a42016475f.zip
Fix duplicate generated annotations
Diffstat (limited to 'javaparser-core-generators/src/main/java')
-rw-r--r--javaparser-core-generators/src/main/java/com/github/javaparser/generator/Generator.java9
-rw-r--r--javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/PropertyGenerator.java1
2 files changed, 7 insertions, 3 deletions
diff --git a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/Generator.java b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/Generator.java
index bb1c70f23..60ebd3d13 100644
--- a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/Generator.java
+++ b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/Generator.java
@@ -1,13 +1,12 @@
package com.github.javaparser.generator;
import com.github.javaparser.ast.Node;
-import com.github.javaparser.ast.body.CallableDeclaration;
-import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration;
import com.github.javaparser.ast.nodeTypes.NodeWithAnnotations;
import com.github.javaparser.utils.SourceRoot;
import javax.annotation.Generated;
+import static com.github.javaparser.ast.NodeList.toNodeList;
import static com.github.javaparser.utils.CodeGenerationUtils.f;
/**
@@ -22,7 +21,11 @@ public abstract class Generator {
public abstract void generate() throws Exception;
- protected <T extends Node & NodeWithAnnotations> void markGenerated(T node) {
+ protected <T extends Node & NodeWithAnnotations<T>> void markGenerated(T node) {
+ node.setAnnotations(
+ node.getAnnotations().stream()
+ .filter(a -> !a.getNameAsString().equals("Generated"))
+ .collect(toNodeList()));
node.addSingleMemberAnnotation(Generated.class, f("\"%s\"", getClass().getName()));
node.tryAddImportToParentCompilationUnit(Generated.class);
}
diff --git a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/PropertyGenerator.java b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/PropertyGenerator.java
index 4ceb6d7b1..08a24d3fd 100644
--- a/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/PropertyGenerator.java
+++ b/javaparser-core-generators/src/main/java/com/github/javaparser/generator/core/node/PropertyGenerator.java
@@ -140,5 +140,6 @@ public class PropertyGenerator extends NodeGenerator {
}
observablePropertyEnum.addEnumConstant("RANGE");
observablePropertyEnum.addEnumConstant("COMMENTED_NODE");
+ markGenerated(observablePropertyEnum);
}
}