aboutsummaryrefslogtreecommitdiffstats
path: root/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java
diff options
context:
space:
mode:
authorMaximilien CRUZ <max@rockpalm.it>2016-07-14 17:30:34 +0200
committerMaximilien CRUZ <max@rockpalm.it>2016-07-17 22:04:31 +0200
commit390fbb37cc7f41787cf2559842beb98e7058b4ae (patch)
tree80c81fa37bbb44dabaff06375ddd9123c75eb97e /javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java
parentd1b21c6bee0519451ba7c39b6f3ade8aa9be109c (diff)
downloadplatform_external_javaparser-390fbb37cc7f41787cf2559842beb98e7058b4ae.tar.gz
platform_external_javaparser-390fbb37cc7f41787cf2559842beb98e7058b4ae.tar.bz2
platform_external_javaparser-390fbb37cc7f41787cf2559842beb98e7058b4ae.zip
builder methods for #363
Diffstat (limited to 'javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java')
-rw-r--r--javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java118
1 files changed, 73 insertions, 45 deletions
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java
index c70ff612c..ce09b432a 100644
--- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java
+++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/NormalAnnotationExpr.java
@@ -18,63 +18,91 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
-
+
package com.github.javaparser.ast.expr;
-import com.github.javaparser.Range;
-import com.github.javaparser.ast.visitor.GenericVisitor;
-import com.github.javaparser.ast.visitor.VoidVisitor;
+import static com.github.javaparser.Position.pos;
+import static com.github.javaparser.ast.internal.Utils.ensureNotNull;
import java.util.List;
-import static com.github.javaparser.Position.pos;
-import static com.github.javaparser.ast.internal.Utils.*;
+import com.github.javaparser.ASTHelper;
+import com.github.javaparser.Range;
+import com.github.javaparser.ast.visitor.GenericVisitor;
+import com.github.javaparser.ast.visitor.VoidVisitor;
/**
* @author Julio Vilmar Gesser
*/
public final class NormalAnnotationExpr extends AnnotationExpr {
- private List<MemberValuePair> pairs;
-
- public NormalAnnotationExpr() {
- }
-
- public NormalAnnotationExpr(final NameExpr name, final List<MemberValuePair> pairs) {
- setName(name);
- setPairs(pairs);
- }
-
- /**
- * @deprecated prefer using Range objects.
- */
- @Deprecated
- public NormalAnnotationExpr(final int beginLine, final int beginColumn, final int endLine, final int endColumn,
- final NameExpr name, final List<MemberValuePair> pairs) {
- this(new Range(pos(beginLine, beginColumn), pos(endLine, endColumn)), name, pairs);
- }
-
- public NormalAnnotationExpr(final Range range, final NameExpr name, final List<MemberValuePair> pairs) {
- super(range);
- setName(name);
- setPairs(pairs);
- }
-
- @Override public <R, A> R accept(final GenericVisitor<R, A> v, final A arg) {
- return v.visit(this, arg);
- }
-
- @Override public <A> void accept(final VoidVisitor<A> v, final A arg) {
- v.visit(this, arg);
- }
-
- public List<MemberValuePair> getPairs() {
+ private List<MemberValuePair> pairs;
+
+ public NormalAnnotationExpr() {
+ }
+
+ public NormalAnnotationExpr(final NameExpr name, final List<MemberValuePair> pairs) {
+ setName(name);
+ setPairs(pairs);
+ }
+
+ /**
+ * @deprecated prefer using Range objects.
+ */
+ @Deprecated
+ public NormalAnnotationExpr(final int beginLine, final int beginColumn, final int endLine, final int endColumn,
+ final NameExpr name, final List<MemberValuePair> pairs) {
+ this(new Range(pos(beginLine, beginColumn), pos(endLine, endColumn)), name, pairs);
+ }
+
+ public NormalAnnotationExpr(final Range range, final NameExpr name, final List<MemberValuePair> pairs) {
+ super(range);
+ setName(name);
+ setPairs(pairs);
+ }
+
+ @Override
+ public <R, A> R accept(final GenericVisitor<R, A> v, final A arg) {
+ return v.visit(this, arg);
+ }
+
+ @Override
+ public <A> void accept(final VoidVisitor<A> v, final A arg) {
+ v.visit(this, arg);
+ }
+
+ public List<MemberValuePair> getPairs() {
pairs = ensureNotNull(pairs);
return pairs;
- }
+ }
+
+ public void setPairs(final List<MemberValuePair> pairs) {
+ this.pairs = pairs;
+ setAsParentNodeOf(this.pairs);
+ }
+
+ /**
+ * adds a pair to this annotation
+ *
+ * @param key
+ * @param value
+ * @return this, the {@link NormalAnnotationExpr}
+ */
+ public NormalAnnotationExpr addPair(String key, String value) {
+ return addPair(key, ASTHelper.createNameExpr(value));
+ }
- public void setPairs(final List<MemberValuePair> pairs) {
- this.pairs = pairs;
- setAsParentNodeOf(this.pairs);
- }
+ /**
+ * adds a pair to this annotation
+ *
+ * @param key
+ * @param value
+ * @return this, the {@link NormalAnnotationExpr}
+ */
+ public NormalAnnotationExpr addPair(String key, NameExpr value) {
+ MemberValuePair memberValuePair = new MemberValuePair(key, value);
+ getPairs().add(memberValuePair);
+ memberValuePair.setParentNode(this);
+ return this;
+ }
}