Example usage for org.eclipse.jdt.core.dom EnumDeclaration setName

List of usage examples for org.eclipse.jdt.core.dom EnumDeclaration setName

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.dom EnumDeclaration setName.

Prototype

public void setName(SimpleName typeName) 

Source Link

Document

Sets the name of the type declared in this type declaration to the given name.

Usage

From source file:de.crowdcode.kissmda.cartridges.simplejava.EnumGenerator.java

License:Apache License

/**
 * Generate the Enum from UML.//www  . ja va  2  s  .  co m
 * 
 * @param clazz
 *            the UML class
 * @param ast
 *            the JDT Java AST
 * @param cu
 *            the generated Java compilation unit
 * @return EnumDeclaration
 */
@SuppressWarnings("unchecked")
public EnumDeclaration generateEnum(Classifier clazz, AST ast, CompilationUnit cu) {
    String className = getClassName(clazz);
    EnumDeclaration ed = ast.newEnumDeclaration();
    ed.modifiers().add(ast.newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
    ed.setName(ast.newSimpleName(className));
    cu.types().add(ed);
    return ed;
}

From source file:de.dentrassi.varlink.generator.JdtGenerator.java

License:Open Source License

@SuppressWarnings("unchecked")
private void createEnum(final TypeDeclaration td, final String name, final EList<String> literals) {
    final AST ast = td.getAST();

    final EnumDeclaration ed = ast.newEnumDeclaration();
    td.bodyDeclarations().add(ed);//from  w ww  .java  2  s . c o m
    ed.setName(ast.newSimpleName(name));
    make(ed, PUBLIC_KEYWORD, STATIC_KEYWORD);

    for (final String literal : literals) {
        final EnumConstantDeclaration ecd = ast.newEnumConstantDeclaration();
        ecd.setName(ast.newSimpleName(literal));
        ed.enumConstants().add(ecd);
    }
}

From source file:org.asup.dk.compiler.rpj.writer.JDTCallableUnitWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeLabels(Collection<String> labels) {

    if (labels.isEmpty())
        return;//  w  w w  .j  a va2 s .  com

    EnumDeclaration enumType = getAST().newEnumDeclaration();
    enumType.setName(getAST().newSimpleName("TAG"));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));

    // elements
    int num = 0;

    for (String label : labels) {

        EnumConstantDeclaration constantDeclaration = getAST().newEnumConstantDeclaration();
        constantDeclaration.setName(getAST().newSimpleName(normalizeEnumName(label)));

        enumType.enumConstants().add(num, constantDeclaration);
        num++;
    }

    getTarget().bodyDeclarations().add(enumType);
}

From source file:org.asup.dk.compiler.rpj.writer.JDTCallableUnitWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeMessages(Collection<String> messages) {

    EnumDeclaration enumType = getAST().newEnumDeclaration();
    enumType.setName(getAST().newSimpleName("QCPFMSG"));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));

    // elements/*  w w w. ja  va 2 s .c om*/
    int num = 0;

    for (String message : messages) {
        if (message.equalsIgnoreCase("CPF0000"))
            continue;
        EnumConstantDeclaration constantDeclaration = getAST().newEnumConstantDeclaration();
        constantDeclaration.setName(getAST().newSimpleName(normalizeEnumName(message)));

        enumType.enumConstants().add(num, constantDeclaration);
        num++;
    }

    getTarget().bodyDeclarations().add(enumType);
}

From source file:org.asup.dk.compiler.rpj.writer.JDTDatabaseFileWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeIndex(List<QFileFormatKey> keys, boolean unique) {

    if (keys.isEmpty())
        return;//from   www . j  av a 2  s  .  c  om

    EnumDeclaration enumType = getAST().newEnumDeclaration();
    writeAnnotation(enumType, Index.class, "unique", unique);

    enumType.setName(getAST().newSimpleName("INDEX_COLUMNS"));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));

    // elements
    int num = 0;

    for (QFileFormatKey key : keys) {

        EnumConstantDeclaration constantDeclaration = getAST().newEnumConstantDeclaration();
        constantDeclaration
                .setName(getAST().newSimpleName(getCompilationUnit().normalizeTermName(key.getName())));

        if (key.isDescend())
            writeAnnotation(constantDeclaration, Descend.class);

        enumType.enumConstants().add(num, constantDeclaration);
        num++;
    }

    getTarget().bodyDeclarations().add(enumType);
}

From source file:org.asup.dk.compiler.rpj.writer.JDTMessageFileWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
private EnumDeclaration buildEnumDeclaration(AST ast, String name,
        List<QMessageDescription> messageDescriptions) {

    // write AST//from w ww. j  a va  2 s .  c om
    EnumDeclaration enumDeclaration = ast.newEnumDeclaration();
    enumDeclaration.setName(ast.newSimpleName(name));

    enumDeclaration.modifiers().add(ast.newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));

    for (QMessageDescription messageDescription : messageDescriptions) {
        EnumConstantDeclaration constantDeclaration = ast.newEnumConstantDeclaration();
        constantDeclaration.setName(ast.newSimpleName(messageDescription.getName()));
        enumDeclaration.enumConstants().add(constantDeclaration);

        /*
         * Javadoc javadoc = ast.newJavadoc(); TagElement tag =
         * javadoc.getAST().newTagElement(); TextElement textElement =
         * javadoc.getAST().newTextElement();
         * textElement.setText(messageDescription.getMessageText());
         * tag.fragments().add(textElement); javadoc.tags().add(tag);
         * 
         * constantDeclaration.setJavadoc(javadoc);
         */
    }

    return enumDeclaration;
}

From source file:org.asup.dk.compiler.rpj.writer.JDTNamedNodeWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeInnerTerm(QDataTerm<?> dataTerm) throws IOException {

    switch (dataTerm.getDataTermType()) {

    case UNARY_ATOMIC:

        break;//from w  w w  . j  ava 2  s . c om

    case UNARY_COMPOUND:
        QUnaryCompoundDataTerm<?> unaryCompoundDataTerm = (QUnaryCompoundDataTerm<?>) dataTerm;

        QCompilerLinker compilerLinker = unaryCompoundDataTerm.getFacet(QCompilerLinker.class);
        if (compilerLinker == null) {

            QCompilationSetup compilationSetup = QDevelopmentKitCompilerFactory.eINSTANCE
                    .createCompilationSetup();

            JDTDataStructureWriter dataStructureWriter = new JDTDataStructureWriter(this, getCompilationUnit(),
                    compilationSetup, getCompilationUnit().normalizeTypeName(unaryCompoundDataTerm),
                    QDataStructWrapper.class, true);
            dataStructureWriter.writeDataStructure(unaryCompoundDataTerm.getDefinition());
        } else {

            if (checkFileOverride(unaryCompoundDataTerm)) {
                Class<QDataStruct> linkedClass = (Class<QDataStruct>) compilerLinker.getLinkedClass();
                QCompilationSetup compilationSetup = QDevelopmentKitCompilerFactory.eINSTANCE
                        .createCompilationSetup();

                JDTDataStructureWriter dataStructureWriter = new JDTDataStructureWriter(this,
                        getCompilationUnit(), compilationSetup,
                        getCompilationUnit().normalizeTypeName(unaryCompoundDataTerm), linkedClass, true);
                List<QDataTerm<?>> elements = new ArrayList<QDataTerm<?>>();
                for (QDataTerm<?> element : unaryCompoundDataTerm.getDefinition().getElements()) {
                    if (element.getFacet(QDerived.class) != null)
                        continue;

                    elements.add(element);
                }
                dataStructureWriter.writeElements(elements);
            }
        }

        break;

    case MULTIPLE_ATOMIC:

        break;

    case MULTIPLE_COMPOUND:
        QMultipleCompoundDataTerm<?> multipleCompoundDataTerm = (QMultipleCompoundDataTerm<?>) dataTerm;

        compilerLinker = multipleCompoundDataTerm.getFacet(QCompilerLinker.class);
        if (compilerLinker == null) {

            QCompilationSetup compilationSetup = QDevelopmentKitCompilerFactory.eINSTANCE
                    .createCompilationSetup();

            JDTDataStructureWriter dataStructureWriter = new JDTDataStructureWriter(this, getCompilationUnit(),
                    compilationSetup, getCompilationUnit().normalizeTypeName(multipleCompoundDataTerm),
                    QDataStructWrapper.class, true);
            dataStructureWriter.writeDataStructure(multipleCompoundDataTerm.getDefinition());
        } else {
            if (checkFileOverride(multipleCompoundDataTerm)) {
                Class<QDataStruct> linkedClass = (Class<QDataStruct>) compilerLinker.getLinkedClass();
                QCompilationSetup compilationSetup = QDevelopmentKitCompilerFactory.eINSTANCE
                        .createCompilationSetup();

                JDTDataStructureWriter dataStructureWriter = new JDTDataStructureWriter(this,
                        getCompilationUnit(), compilationSetup,
                        getCompilationUnit().normalizeTypeName(multipleCompoundDataTerm), linkedClass, true);
                List<QDataTerm<?>> elements = new ArrayList<QDataTerm<?>>();
                for (QDataTerm<?> element : multipleCompoundDataTerm.getDefinition().getElements()) {
                    if (element.getFacet(QDerived.class) != null)
                        continue;

                    elements.add(element);
                }
                dataStructureWriter.writeElements(elements);
            }
        }

        break;
    }

    QSpecial special = dataTerm.getFacet(QSpecial.class);
    if (special != null) {
        EnumDeclaration enumType = getAST().newEnumDeclaration();
        enumType.setName(getAST().newSimpleName(getCompilationUnit().normalizeTypeName(dataTerm) + "Enum"));
        writeEnum(enumType, dataTerm);

        writeImport(Special.class);

        target.bodyDeclarations().add(enumType);
    }

}

From source file:org.eclipse.jdt.core.dom.ASTConverter.java

License:Open Source License

private EnumDeclaration convertToEnumDeclaration(
        org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration) {
    checkCanceled();/*from  w  ww  . ja  v  a 2 s.  c o m*/
    // enum declaration cannot be built if the source is not >= 1.5, since enum is then seen as an identifier
    final EnumDeclaration enumDeclaration2 = new EnumDeclaration(this.ast);
    setModifiers(enumDeclaration2, typeDeclaration);
    final SimpleName typeName = new SimpleName(this.ast);
    typeName.internalSetIdentifier(new String(typeDeclaration.name));
    typeName.setSourceRange(typeDeclaration.sourceStart,
            typeDeclaration.sourceEnd - typeDeclaration.sourceStart + 1);
    enumDeclaration2.setName(typeName);
    enumDeclaration2.setSourceRange(typeDeclaration.declarationSourceStart,
            typeDeclaration.bodyEnd - typeDeclaration.declarationSourceStart + 1);

    org.eclipse.jdt.internal.compiler.ast.TypeReference[] superInterfaces = typeDeclaration.superInterfaces;
    if (superInterfaces != null) {
        for (int index = 0, length = superInterfaces.length; index < length; index++) {
            enumDeclaration2.superInterfaceTypes().add(convertType(superInterfaces[index]));
        }
    }
    buildBodyDeclarations(typeDeclaration, enumDeclaration2);
    if (this.resolveBindings) {
        recordNodes(enumDeclaration2, typeDeclaration);
        recordNodes(typeName, typeDeclaration);
        enumDeclaration2.resolveBinding();
    }
    return enumDeclaration2;
}

From source file:org.smeup.sys.dk.compiler.rpj.writer.JDTCallableUnitWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeLabels(Collection<String> labels, boolean private_, boolean static_) {

    if (labels.isEmpty())
        return;//  w  ww  .j a va2  s .  c o m

    EnumDeclaration enumType = getAST().newEnumDeclaration();
    enumType.setName(getAST().newSimpleName("TAG"));

    if (private_)
        enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PRIVATE_KEYWORD));
    else
        enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));

    if (static_)
        enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));

    // elements
    int num = 0;

    for (String label : labels) {

        EnumConstantDeclaration constantDeclaration = getAST().newEnumConstantDeclaration();
        constantDeclaration.setName(getAST().newSimpleName(getCompilationUnit().normalizeLabelName(label)));

        enumType.enumConstants().add(num, constantDeclaration);
        num++;
    }

    getTarget().bodyDeclarations().add(enumType);
}

From source file:org.smeup.sys.dk.compiler.rpj.writer.JDTDatabaseFileWriter.java

License:Open Source License

@SuppressWarnings("unchecked")
public void writeIndex(QFileFormatKey fileFormatKey) {

    if (fileFormatKey == null || fileFormatKey.getKeyFields().isEmpty())
        return;//from   ww w .j av  a  2s . com

    EnumDeclaration enumType = getAST().newEnumDeclaration();
    writeAnnotation(enumType, Index.class, "unique", fileFormatKey.isUnique());

    enumType.setName(getAST().newSimpleName("INDEX_COLUMNS"));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
    enumType.modifiers().add(getAST().newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));

    // elements
    int num = 0;

    for (QFileFormatKeyField key : fileFormatKey.getKeyFields()) {

        EnumConstantDeclaration constantDeclaration = getAST().newEnumConstantDeclaration();
        constantDeclaration
                .setName(getAST().newSimpleName(getCompilationUnit().normalizeTermName(key.getName())));

        if (key.isDescend())
            writeAnnotation(constantDeclaration, Descend.class);

        enumType.enumConstants().add(num, constantDeclaration);
        num++;
    }

    getTarget().bodyDeclarations().add(enumType);
}