All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.mysema.query.apt.Configuration Maven / Gradle / Ivy

There is a newer version: 3.7.4
Show newest version
/*
 * Copyright (c) 2009 Mysema Ltd.
 * All rights reserved.
 *
 */
package com.mysema.query.apt;

import java.lang.annotation.Annotation;
import java.util.Collection;
import java.util.List;

import javax.annotation.Nullable;
import javax.lang.model.element.Element;
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;

import com.mysema.query.codegen.EntityType;
import com.mysema.query.codegen.Serializer;
import com.mysema.query.codegen.SerializerConfig;
import com.mysema.query.codegen.TypeMappings;

/**
 * Configuration defines the configuration options for APT based Querydsl code generation
 *
 * @author tiwe
 *
 */
public interface Configuration {

    TypeMappings getTypeMappings();

    VisitorConfig getConfig(TypeElement e, List elements);

    Serializer getDTOSerializer();

    @Nullable
    Class getEmbeddableAnn();

    Serializer getEmbeddableSerializer();

    Class getEntityAnn();

    Serializer getEntitySerializer();

    String getNamePrefix();

    SerializerConfig getSerializerConfig(EntityType model);

    @Nullable
    Class getSkipAnn();

    @Nullable
    Class getSuperTypeAnn();

    Serializer getSupertypeSerializer();

    boolean isBlockedField(VariableElement field);

    boolean isBlockedGetter(ExecutableElement getter);

    boolean isUseFields();

    boolean isUseGetters();

    boolean isValidConstructor(ExecutableElement constructor);

    boolean isValidField(VariableElement field);

    boolean isValidGetter(ExecutableElement getter);

    void setNamePrefix(String namePrefix);

    void setUseFields(boolean b);

    void setUseGetters(boolean b);

    Collection getKeywords();

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy