List of usage examples for org.eclipse.jdt.core.dom NormalAnnotation getTypeName
public Name getTypeName()
From source file:at.bestsolution.fxide.jdt.corext.dom.ASTFlattener.java
License:Open Source License
@Override public boolean visit(NormalAnnotation node) { this.fBuffer.append("@");//$NON-NLS-1$ node.getTypeName().accept(this); this.fBuffer.append("(");//$NON-NLS-1$ for (Iterator<MemberValuePair> it = node.values().iterator(); it.hasNext();) { MemberValuePair p = it.next();//from ww w . java2s.c om p.accept(this); if (it.hasNext()) { this.fBuffer.append(",");//$NON-NLS-1$ } } this.fBuffer.append(")");//$NON-NLS-1$ return false; }
From source file:coloredide.utils.CopiedNaiveASTFlattener.java
License:Open Source License
public boolean visit(NormalAnnotation node) { this.buffer.append("@");//$NON-NLS-1$ node.getTypeName().accept(this); this.buffer.append("(");//$NON-NLS-1$ for (Iterator it = node.values().iterator(); it.hasNext();) { MemberValuePair p = (MemberValuePair) it.next(); p.accept(this); if (it.hasNext()) { this.buffer.append(",");//$NON-NLS-1$ }/*w w w. j a v a2 s .co m*/ } this.buffer.append(")");//$NON-NLS-1$ return false; }
From source file:com.google.devtools.j2objc.ast.DebugASTPrinter.java
License:Apache License
@Override public boolean visit(NormalAnnotation node) { sb.print("@"); node.getTypeName().accept(this); sb.print("("); for (Iterator<MemberValuePair> it = node.getValues().iterator(); it.hasNext();) { MemberValuePair p = (MemberValuePair) it.next(); p.accept(this); if (it.hasNext()) { sb.print(','); }/*from w ww . j a v a2 s.c om*/ } sb.print(")"); return false; }
From source file:com.google.googlejavaformat.java.JavaInputAstVisitor.java
License:Apache License
/** Visitor method for {@link NormalAnnotation}s. */ @Override//from ww w . j av a 2 s . c o m public boolean visit(NormalAnnotation node) { sync(node); builder.open(ZERO); token("@"); node.getTypeName().accept(this); builder.open(plusTwo, MAX_LINES_FOR_ANNOTATION_ELEMENT_VALUE_PAIRS); token("("); builder.breakOp(); boolean first = true; // Format the member value pairs one-per-line if any of them are // initialized with arrays. boolean hasArrayInitializer = false; for (MemberValuePair value : (List<MemberValuePair>) node.values()) { if (value.getValue().getNodeType() == ASTNode.ARRAY_INITIALIZER) { hasArrayInitializer = true; break; } } for (MemberValuePair value : (List<MemberValuePair>) node.values()) { if (!first) { token(","); if (hasArrayInitializer) { builder.forcedBreak(); } else { builder.breakOp(" "); } } value.accept(this); first = false; } builder.breakOp(FillMode.UNIFIED, "", minusTwo, Optional.<BreakTag>absent()); token(")"); builder.close(); builder.close(); return false; }
From source file:com.liferay.ide.project.core.modules.NewLiferayModuleProjectOpMethods.java
License:Open Source License
@SuppressWarnings("unchecked") public static void addProperties(File dest, List<String> properties) throws Exception { try {/* w w w .j ava 2s . c o m*/ if (properties == null || properties.size() < 1) { return; } ASTParser parser = ASTParser.newParser(AST.JLS8); String readContents = FileUtil.readContents(dest, true); parser.setSource(readContents.toCharArray()); parser.setKind(ASTParser.K_COMPILATION_UNIT); parser.setResolveBindings(true); final CompilationUnit cu = (CompilationUnit) parser.createAST(new NullProgressMonitor()); cu.recordModifications(); Document document = new Document(new String(readContents)); cu.accept(new ASTVisitor() { @Override public boolean visit(NormalAnnotation node) { if (node.getTypeName().getFullyQualifiedName().equals("Component")) { ASTRewrite rewrite = ASTRewrite.create(cu.getAST()); AST ast = cu.getAST(); List<ASTNode> values = node.values(); boolean hasProperty = false; for (ASTNode astNode : values) { if (astNode instanceof MemberValuePair) { MemberValuePair pairNode = (MemberValuePair) astNode; if (pairNode.getName().getFullyQualifiedName().equals("property")) { Expression express = pairNode.getValue(); if (express instanceof ArrayInitializer) { ListRewrite lrw = rewrite.getListRewrite(express, ArrayInitializer.EXPRESSIONS_PROPERTY); ArrayInitializer initializer = (ArrayInitializer) express; List<ASTNode> expressions = (List<ASTNode>) initializer.expressions(); ASTNode propertyNode = null; for (int i = properties.size() - 1; i >= 0; i--) { StringLiteral stringLiteral = ast.newStringLiteral(); stringLiteral.setLiteralValue(properties.get(i)); if (expressions.size() > 0) { propertyNode = expressions.get(expressions.size() - 1); lrw.insertAfter(stringLiteral, propertyNode, null); } else { lrw.insertFirst(stringLiteral, null); } } } hasProperty = true; } } } if (hasProperty == false) { ListRewrite clrw = rewrite.getListRewrite(node, NormalAnnotation.VALUES_PROPERTY); ASTNode lastNode = values.get(values.size() - 1); ArrayInitializer newArrayInitializer = ast.newArrayInitializer(); MemberValuePair propertyMemberValuePair = ast.newMemberValuePair(); propertyMemberValuePair.setName(ast.newSimpleName("property")); propertyMemberValuePair.setValue(newArrayInitializer); clrw.insertBefore(propertyMemberValuePair, lastNode, null); ListRewrite newLrw = rewrite.getListRewrite(newArrayInitializer, ArrayInitializer.EXPRESSIONS_PROPERTY); for (String property : properties) { StringLiteral stringLiteral = ast.newStringLiteral(); stringLiteral.setLiteralValue(property); newLrw.insertAt(stringLiteral, 0, null); } } try (FileOutputStream fos = new FileOutputStream(dest)) { TextEdit edits = rewrite.rewriteAST(document, null); edits.apply(document); fos.write(document.get().getBytes()); fos.flush(); } catch (Exception e) { ProjectCore.logError(e); } } return super.visit(node); } }); } catch (Exception e) { ProjectCore.logError("error when adding properties to " + dest.getAbsolutePath(), e); } }
From source file:edu.uci.ics.sourcerer.extractor.ast.ReferenceExtractorVisitor.java
License:Open Source License
/** * This method writes:/* w ww . j a va2 s.co m*/ *<ul> * <li>For any normal annotation use: * <ul> * <li>Annotated by relation to <code>IRelationWriter</code>.</li> * </ul></li> *</ul> */ @Override public boolean visit(NormalAnnotation node) { // Get the fqn String fqn = null; IAnnotationBinding binding = node.resolveAnnotationBinding(); if (binding == null) { fqn = getUnknownFqn(node.getTypeName().getFullyQualifiedName()); } else { ITypeBinding typeBinding = binding.getAnnotationType(); if (typeBinding == null) { fqn = getUnknownFqn(binding.getName()); } else { fqn = getTypeFqn(typeBinding); } } // Write the annotates relation relationWriter.writeAnnotatedBy(fqnStack.getFqn(), fqn, getLocation(node)); return true; }
From source file:edu.uci.ics.sourcerer.tools.java.extractor.eclipse.ReferenceExtractorVisitor.java
License:Open Source License
/** * This method writes:/*from w ww . ja v a2s .co m*/ *<ul> * <li>For any normal annotation use: * <ul> * <li>Annotated by relation to <code>IRelationWriter</code>.</li> * </ul></li> *</ul> */ @Override public boolean visit(NormalAnnotation node) { // Get the fqn String fqn = null; IAnnotationBinding binding = node.resolveAnnotationBinding(); if (binding == null) { fqn = createUnknownFqn(node.getTypeName().getFullyQualifiedName()); } else { ITypeBinding typeBinding = binding.getAnnotationType(); if (typeBinding == null) { fqn = createUnknownFqn(binding.getName()); } else { fqn = getTypeFqn(typeBinding); } } // Write the annotates relation relationWriter.writeRelation(Relation.ANNOTATED_BY, fqnStack.getFqn(), fqn, createLocation(node)); return true; }
From source file:egovframework.mgt.fit.library.parser.visitor.AnnotationParsingVisitor.java
License:Apache License
/** * ? ? ?./*from ww w .j a v a 2 s . c om*/ * @return */ @Override public boolean visit(NormalAnnotation node) { if (node.getNodeType() == ASTNode.NORMAL_ANNOTATION) { if (node.getParent().getNodeType() == parentType) { AnnotationUnit au = new AnnotationUnit(); au.setName(node.getTypeName().getFullyQualifiedName()); for (Object value : node.values()) { if (value instanceof MemberValuePair) { MemberValuePair mvp = (MemberValuePair) value; Variable annotationValue = new Variable(); annotationValue.setName(mvp.getName().getFullyQualifiedName()); annotationValue.setValue(mvp.getValue().toString()); au.addAnnotationValue(annotationValue); } } unit.addAnnotation(au); } } return super.visit(node); }
From source file:java5totext.input.JDTVisitor.java
License:Open Source License
@Override public void endVisit(org.eclipse.jdt.core.dom.NormalAnnotation node) { Annotation element = (Annotation) this.binding.get(node); this.initializeNode(element, node); if (this.binding.get(node.getTypeName()) != null) element.setType((NamedElementRef) this.binding.get(node.getTypeName())); for (Iterator<?> i = node.values().iterator(); i.hasNext();) { AnnotationMemberValuePair itElement = (AnnotationMemberValuePair) this.binding.get(i.next()); if (itElement != null) element.getValues().add(itElement); }//from w w w . j av a2s . c o m }
From source file:lang.java.jdt.internal.JdtAstToRascalAstConverter.java
License:Open Source License
public boolean visit(NormalAnnotation node) { IValue typeName = values.string(node.getTypeName().getFullyQualifiedName()); IValueList memberValuePairs = new IValueList(values); for (Iterator it = node.values().iterator(); it.hasNext();) { MemberValuePair p = (MemberValuePair) it.next(); memberValuePairs.add(visitChild(p)); }/*from w w w . ja va 2s . c o m*/ ownValue = constructRascalNode(node, typeName, memberValuePairs.asList()); return false; }