Example usage for javax.lang.model.element Modifier PUBLIC

List of usage examples for javax.lang.model.element Modifier PUBLIC

Introduction

In this page you can find the example usage for javax.lang.model.element Modifier PUBLIC.

Prototype

Modifier PUBLIC

To view the source code for javax.lang.model.element Modifier PUBLIC.

Click Source Link

Document

The modifier public

Usage

From source file:Main.java

public static boolean isPrivate(Element d) {
    Collection<Modifier> mods = d.getModifiers();
    for (Modifier mod : mods) {
        if (Modifier.PRIVATE.equals(mod)) {
            return true;
        } else if (Modifier.PROTECTED.equals(mod)) {
            return false;
        } else if (Modifier.PUBLIC.equals(mod)) {
            return false;
        }//ww w. j av a  2s .com
    }
    return false;
}

From source file:Main.java

public static boolean isPublic(Element annotatedClass) {
    return annotatedClass.getModifiers().contains(Modifier.PUBLIC);
}

From source file:com.github.jdot.type.Property.java

/**
 * Returns new BeanProperty instance if the specified element is a JavaBean accessor method, otherwise null.
 * /*from  w w w  .j av a 2 s  .  c o m*/
 * @param element
 * @return
 */
public static Property build(Type owner, ExecutableElement element) {
    Property beanProperty = null;
    String name = null;
    boolean propertyFound = true;
    boolean writeable = false;
    String type = null;

    // Check modifiers
    boolean publicFound = false;
    boolean staticFound = false;
    for (Modifier modifier : element.getModifiers()) {
        if (Modifier.PUBLIC.equals(modifier)) {
            publicFound = true;
        }
        if (Modifier.STATIC.equals(modifier)) {
            staticFound = true;
        }
    }
    if (!publicFound || staticFound) {
        propertyFound = false;
    }

    // Check method name
    if (propertyFound) {
        String methodName = element.getSimpleName().toString();
        if (methodName.startsWith("set") && Character.isUpperCase(methodName.charAt(3))) {
            name = StringUtils.uncapitalize(methodName.substring(3));
            writeable = true;
        } else if (methodName.startsWith("get") && Character.isUpperCase(methodName.charAt(3))) {
            name = StringUtils.uncapitalize(methodName.substring(3));
        } else if (methodName.startsWith("is") && Character.isUpperCase(methodName.charAt(2))) {
            name = StringUtils.uncapitalize(methodName.substring(2));
        } else {
            propertyFound = false;
        }
    }

    // Check arguments / return type
    if (propertyFound) {
        if (writeable) {
            if (element.getParameters().size() == 1
                    && TypeKind.VOID.equals(element.getReturnType().getKind())) {
                type = element.getParameters().get(0).asType().toString();
            } else {
                propertyFound = false;
            }
        } else {
            if (TypeKind.VOID.equals(element.getReturnType().getKind())) {
                propertyFound = false;
            } else {
                type = element.getReturnType().toString();
            }
        }
    }

    if (propertyFound) {
        beanProperty = new Property(owner, element, name, type, writeable);
    }
    return beanProperty;
}

From source file:info.archinnov.achilles.internals.codegen.dsl.select.SelectDSLCodeGen.java

public static TypeSpec buildSelectClass(EntityMetaSignature signature) {

    final String firstPartitionKey = signature.fieldMetaSignatures.stream()
            .filter(x -> x.context.columnType == ColumnType.PARTITION)
            .map(x -> Tuple2.of(x.context.fieldName, (PartitionKeyInfo) x.context.columnInfo))
            .sorted(TUPLE2_PARTITION_KEY_SORTER).map(Tuple2::_1).findFirst().get();

    TypeName selectFromTypeName = ClassName.get(DSL_PACKAGE, signature.selectFromReturnType());
    TypeName selectColumnsTypeName = ClassName.get(DSL_PACKAGE, signature.selectColumnsReturnType());

    final TypeSpec.Builder selectClassBuilder = TypeSpec.classBuilder(signature.selectClassName())
            .superclass(ABSTRACT_SELECT).addModifiers(Modifier.PUBLIC, Modifier.FINAL)
            .addMethod(buildSelectConstructor(signature)).addField(buildExactEntityMetaField(signature))
            .addField(buildEntityClassField(signature)).addType(buildSelectColumns(signature))
            .addType(buildSelectFrom(signature, firstPartitionKey));

    signature.fieldMetaSignatures.stream().filter(x -> x.context.columnType != ColumnType.COMPUTED)
            .forEach(x -> selectClassBuilder
                    .addMethod(buildSelectColumnMethod(selectColumnsTypeName, x, "select", NEW)));

    signature.fieldMetaSignatures.stream().filter(x -> x.context.columnType == ColumnType.COMPUTED)
            .forEach(x -> selectClassBuilder
                    .addMethod(buildSelectComputedColumnMethod(selectColumnsTypeName, x, "select", NEW)));

    selectClassBuilder.addMethod(buildSelectFunctionCallMethod(selectColumnsTypeName, "select", NEW));

    selectClassBuilder.addMethod(buildAllColumns(selectFromTypeName, SELECT_WHERE, "select"));
    selectClassBuilder.addMethod(buildAllColumnsWithSchemaProvider(selectFromTypeName, SELECT_WHERE, "select"));

    SelectWhereDSLCodeGen.buildWhereClasses(signature).forEach(selectClassBuilder::addType);

    return selectClassBuilder.build();
}

From source file:me.oriley.shiv.holders.ExtraBindingHolder.java

@Override
void addBindingsToClass(@NonNull TypeSpec.Builder typeSpecBuilder) throws ShivException {
    if (mElements.isEmpty()) {
        // Nothing to bind
        return;/*from   w  w w .j av  a 2s.  c  o  m*/
    }

    // Type parameter
    ParameterSpec param = ParameterSpec
            .builder(TypeName.get(Object.class).annotated(AnnotationSpec.builder(NonNull.class).build()),
                    OBJECT, Modifier.FINAL)
            .build();

    // Create bindExtras method
    MethodSpec bindMethod = MethodSpec.methodBuilder(BIND_EXTRAS).addModifiers(Modifier.PUBLIC)
            .addAnnotation(Override.class).addParameter(param).addCode(generateBindExtrasMethod()).build();

    typeSpecBuilder.addMethod(bindMethod);
}

From source file:info.archinnov.achilles.internals.codegen.meta.UDTMetaCodeGen.java

public TypeSpec buildUDTClassProperty(TypeElement elm, EntityParsingContext context,
        List<FieldMetaSignature> parsingResults) {

    final TypeName rawBeanType = TypeName.get(aptUtils.erasure(elm));

    final Optional<Strategy> strategy = aptUtils.getAnnotationOnClass(elm, Strategy.class);

    final String className = elm.getSimpleName() + META_SUFFIX;
    TypeName classType = ClassName.get(UDT_META_PACKAGE, className);
    final TypeSpec.Builder builder = TypeSpec.classBuilder(className)
            .addModifiers(Modifier.PUBLIC, Modifier.FINAL)
            .superclass(genericType(ABSTRACT_UDT_CLASS_PROPERTY, rawBeanType))
            .addMethod(buildGetStaticKeyspace(elm)).addMethod(buildGetStaticUDTName(elm))
            .addMethod(buildGetStaticNamingStrategy(strategy)).addMethod(buildGetUdtName(elm, context))
            .addMethod(buildGetUdtClass(rawBeanType))
            .addMethod(buildComponentsProperty(rawBeanType, parsingResults))
            .addMethod(buildCreateUDTFromBeanT(rawBeanType, parsingResults))
            .addMethod(buildCreateBeanFromUDT(rawBeanType, parsingResults));

    for (FieldMetaSignature x : parsingResults) {
        builder.addField(x.buildPropertyAsField());
    }//from w w  w. ja  v  a  2 s. c  o  m

    /**
     * REALLY IMPORTANT, generate the INSTANCE field
     * right AFTER ALL the meta data
     */
    builder.addField(build_INSTANCE_Field(classType));

    return builder.build();
}

From source file:info.archinnov.achilles.internals.parser.validator.BeanValidator.java

public static void validateHasPublicConstructor(AptUtils aptUtils, TypeName typeName, TypeElement typeElement) {
    final long constructorCount = ElementFilter.constructorsIn(typeElement.getEnclosedElements()).stream()
            .filter(x -> x.getModifiers().contains(Modifier.PUBLIC)) // public constructor
            .filter(x -> x.getParameters().size() == 0) //No arg constructor
            .count();//from  w ww .  ja v  a2s  .com
    aptUtils.validateTrue(constructorCount == 1, "Bean type '%s' should have a public constructor", typeName);
}

From source file:com.github.benmanes.caffeine.cache.node.NodeRule.java

/** Creates an accessor that returns the reference. */
protected final MethodSpec newGetRef(String varName) {
    MethodSpec.Builder getter = MethodSpec.methodBuilder("get" + capitalize(varName) + "Reference")
            .addModifiers(Modifier.PUBLIC, Modifier.FINAL).returns(Object.class);
    getter.addStatement("return $T.UNSAFE.getObject(this, $N)", UNSAFE_ACCESS, offsetName(varName));
    return getter.build();
}

From source file:ch.rasc.constgen.CodeGenerator.java

public void generate(Appendable appendable) throws IOException {
    Builder classBuilder = TypeSpec.classBuilder(this.className);
    classBuilder.addModifiers(Modifier.PUBLIC, Modifier.FINAL);

    for (Constant constant : collectFields()) {
        FieldSpec fieldSpec = FieldSpec.builder(String.class, constant.getName())
                .addModifiers(Modifier.PUBLIC, Modifier.FINAL, Modifier.STATIC)
                .initializer("$S", constant.getValue()).build();

        classBuilder.addField(fieldSpec);
    }//  www.j  av a 2 s  .c om

    JavaFile javaFile = JavaFile.builder(this.packageName, classBuilder.build()).build();
    javaFile.writeTo(appendable);
}

From source file:com.github.benmanes.caffeine.cache.node.AddExpiration.java

private void addLink(String method, String varName) {
    MethodSpec getter = MethodSpec.methodBuilder("get" + capitalize(method)).addModifiers(Modifier.PUBLIC)
            .addStatement("return $N", varName).returns(NODE).build();
    MethodSpec setter = MethodSpec.methodBuilder("set" + capitalize(method)).addModifiers(Modifier.PUBLIC)
            .addParameter(NODE, varName).addStatement("this.$N = $N", varName, varName).build();
    context.nodeSubtype.addMethod(getter).addMethod(setter);
}