private Iterator<ASTNode> getReplacementScope() throws JavaModelException { boolean declPredecessorReached = false; Collection<ASTNode> scope = new ArrayList<>(); AbstractTypeDeclaration containingType = getContainingTypeDeclarationNode(); if (containingType instanceof EnumDeclaration) { // replace in all enum constants bodies EnumDeclaration enumDeclaration = (EnumDeclaration) containingType; scope.addAll(enumDeclaration.enumConstants()); } for (Iterator<IExtendedModifier> iter = containingType.modifiers().iterator(); iter.hasNext();) { IExtendedModifier modifier = iter.next(); if (modifier instanceof Annotation) { scope.add((ASTNode) modifier); } } for (Iterator<BodyDeclaration> bodyDeclarations = containingType.bodyDeclarations().iterator(); bodyDeclarations.hasNext();) { BodyDeclaration bodyDeclaration = bodyDeclarations.next(); if (bodyDeclaration == getNodeToInsertConstantDeclarationAfter()) { declPredecessorReached = true; } if (insertFirst() || declPredecessorReached || !isStaticFieldOrStaticInitializer(bodyDeclaration)) { scope.add(bodyDeclaration); } } return scope.iterator(); }
/** * Add a new inner class to the file. * * @param cname class name * @param outer containing class builder * @param isenum Java 5 enum class flag * @return builder */ public ClassBuilder newInnerClass(String cname, ClassBuilder outer, boolean isenum) { AbstractTypeDeclaration decl = createClass(cname, isenum); decl.modifiers().add(m_ast.newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD)); // type.superInterfaceTypes().add(createType("java.io.Serializable")); return new ClassBuilder(decl, outer); }
/** * Returns if the {@link AbstractTypeDeclaration} is static or not (has the * static keyword or not) * * @param typeDeclaration * @return true if it is static, false otherwise */ static boolean isStatic(AbstractTypeDeclaration typeDeclaration) { List<IExtendedModifier> modifiers = typeDeclaration.modifiers(); if (modifiers.isEmpty()) { return false; } for (IExtendedModifier modifier : modifiers) { if (!modifier.isModifier()) { continue; } Modifier modifier2 = (Modifier) modifier; if (modifier2.isStatic()) { return true; } } return false; }
private Iterator<ASTNode> getReplacementScope() throws JavaModelException { boolean declPredecessorReached= false; Collection<ASTNode> scope= new ArrayList<>(); AbstractTypeDeclaration containingType= getContainingTypeDeclarationNode(); if (containingType instanceof EnumDeclaration) { // replace in all enum constants bodies EnumDeclaration enumDeclaration= (EnumDeclaration) containingType; scope.addAll(enumDeclaration.enumConstants()); } for (Iterator<IExtendedModifier> iter= containingType.modifiers().iterator(); iter.hasNext();) { IExtendedModifier modifier= iter.next(); if (modifier instanceof Annotation) { scope.add((ASTNode) modifier); } } for (Iterator<BodyDeclaration> bodyDeclarations = containingType.bodyDeclarations().iterator(); bodyDeclarations.hasNext();) { BodyDeclaration bodyDeclaration= bodyDeclarations.next(); if(bodyDeclaration == getNodeToInsertConstantDeclarationAfter()) declPredecessorReached= true; if(insertFirst() || declPredecessorReached || !isStaticFieldOrStaticInitializer(bodyDeclaration)) scope.add(bodyDeclaration); } return scope.iterator(); }
private Iterator<ASTNode> getReplacementScope() throws JavaModelException { boolean declPredecessorReached= false; Collection<ASTNode> scope= new ArrayList<>(); AbstractTypeDeclaration containingType= getContainingTypeDeclarationNode(); if (containingType instanceof EnumDeclaration) { // replace in all enum constants bodies EnumDeclaration enumDeclaration= (EnumDeclaration) containingType; scope.addAll(enumDeclaration.enumConstants()); } for (Iterator<IExtendedModifier> iter= containingType.modifiers().iterator(); iter.hasNext();) { IExtendedModifier modifier= iter.next(); if (modifier instanceof Annotation) { scope.add((ASTNode) modifier); } } for (Iterator<BodyDeclaration> bodyDeclarations = containingType.bodyDeclarations().iterator(); bodyDeclarations.hasNext();) { BodyDeclaration bodyDeclaration= bodyDeclarations.next(); if(bodyDeclaration == getNodeToInsertConstantDeclarationAfter()) declPredecessorReached= true; if(insertFirst() || declPredecessorReached || !isStaticFieldOrStaticInitializer(bodyDeclaration)) scope.add(bodyDeclaration); } return scope.iterator(); }
/** * Create a type declaration. * * @param cname class name * @param isenum Java 5 enum class flag * @return type declaration */ private AbstractTypeDeclaration createClass(String cname, boolean isenum) { AbstractTypeDeclaration abstype; if (isenum) { abstype = m_ast.newEnumDeclaration(); } else { TypeDeclaration type = m_ast.newTypeDeclaration(); type.setInterface(false); abstype = type; } abstype.modifiers().add(m_ast.newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD)); abstype.setName(m_ast.newSimpleName(cname)); return abstype; }
/** * Process modifiers of {@link TypeDeclaration}. * * @param typeDeclaration - the type declaration. * @param classMetadata - class meta data. */ @SuppressWarnings( "unchecked" ) protected void processModifiersOfTypeDeclaration( AbstractTypeDeclaration typeDeclaration, TypeMetadata classMetadata ) { List<IExtendedModifier> modifiers = typeDeclaration.modifiers(); for (IExtendedModifier extendedModifier : modifiers) { if (extendedModifier.isAnnotation()) { if (extendedModifier instanceof MarkerAnnotation) { MarkerAnnotation marker = (MarkerAnnotation)extendedModifier; classMetadata.getAnnotations().add(AnnotationMetadata.markerAnnotation(JavaMetadataUtil.getName(marker.getTypeName()))); } } else { Modifier modifier = (Modifier)extendedModifier; classMetadata.getModifiers().add(new ModifierMetadata(modifier.getKeyword().toString())); } } }
/** * Process modifiers of {@link TypeDeclaration}. * * @param typeDeclaration - the type declaration. * @param classMetadata - class meta data. */ @SuppressWarnings( "unchecked" ) protected void processModifiersOfTypeDeclaration( AbstractTypeDeclaration typeDeclaration, TypeMetadata classMetadata ) { List<IExtendedModifier> modifiers = typeDeclaration.modifiers(); for (IExtendedModifier extendedModifier : modifiers) { if (extendedModifier.isAnnotation()) { if (extendedModifier instanceof MarkerAnnotation) { MarkerAnnotation marker = (MarkerAnnotation)extendedModifier; classMetadata.getAnnotations().add(AnnotationMetadata.markerAnnotation(JavaMetadataUtil.getName(marker.getTypeName()))); } } else { Modifier modifier = (Modifier)extendedModifier; classMetadata.getModifiers().add(new ModifierMetadata(modifier.getKeyword().toString())); } } }
Set<String> annotations = extractAnnotationTypes(node.modifiers()); type.setDeprecatedAnnotation(annotations.contains("Deprecated"));
appendModifiers(buf, decl.modifiers());
appendModifiers(buf, decl.modifiers());
appendModifiers(buf, decl.modifiers());
compilationUnit.getLength(), extractDefinitionLine(typeLine)); classReferences.add(mainTypeClassReference); processModifiers(mainTypeClassReference, typeDeclaration.modifiers());
if (index == -1) { AbstractTypeDeclaration typeNode= (AbstractTypeDeclaration) astRoot.types().get(0); int start= ((ASTNode) typeNode.modifiers().get(0)).getStartPosition(); int end= typeNode.getStartPosition() + typeNode.getLength(); buffer.replace(start, end - start, typeContent);
if (index == -1) { AbstractTypeDeclaration typeNode= (AbstractTypeDeclaration) astRoot.types().get(0); int start= ((ASTNode) typeNode.modifiers().get(0)).getStartPosition(); int end= typeNode.getStartPosition() + typeNode.getLength(); buffer.replace(start, end - start, typeContent);
if (index == -1) { AbstractTypeDeclaration typeNode= (AbstractTypeDeclaration) astRoot.types().get(0); int start= ((ASTNode) typeNode.modifiers().get(0)).getStartPosition(); int end= typeNode.getStartPosition() + typeNode.getLength(); buffer.replace(start, end - start, typeContent);
int start= ((ASTNode) typeNode.modifiers().get(0)).getStartPosition(); int end= typeNode.getStartPosition() + typeNode.getLength();
typeDecl.setJavadoc((Javadoc) rewrite.createStringPlaceholder(typeComment, ASTNode.JAVADOC)); typeDecl.modifiers().add(ast.newModifier(ModifierKeyword.PUBLIC_KEYWORD));
typeDecl.setJavadoc((Javadoc) rewrite.createStringPlaceholder(typeComment, ASTNode.JAVADOC)); typeDecl.modifiers().add(ast.newModifier(ModifierKeyword.PUBLIC_KEYWORD));