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

com.querydsl.sql.codegen.MetadataExporterConfig Maven / Gradle / Ivy

There is a newer version: 6.10.1
Show newest version
package com.querydsl.sql.codegen;

import com.querydsl.codegen.Property;
import com.querydsl.codegen.Serializer;
import com.querydsl.sql.SchemaAndTable;
import com.querydsl.sql.codegen.support.CustomType;
import com.querydsl.sql.codegen.support.NumericMapping;
import com.querydsl.sql.codegen.support.RenameMapping;
import com.querydsl.sql.codegen.support.TypeMapping;
import java.io.File;
import java.nio.charset.Charset;
import java.util.Comparator;
import java.util.List;

public interface MetadataExporterConfig {

  /**
   * Override the name prefix for the classes (default: Q)
   *
   * @return name prefix for querydsl-types (default: Q)
   */
  String getNamePrefix();

  /**
   * Override the name suffix for the classes (default: "")
   *
   * @return name suffix for querydsl-types (default: "")
   */
  String getNameSuffix();

  /**
   * Override the bean prefix for the classes (default: "")
   *
   * @return bean prefix for bean-types (default: "")
   */
  String getBeanPrefix();

  /**
   * Override the bean suffix for the classes (default: "")
   *
   * @return bean suffix for bean-types (default: "")
   */
  String getBeanSuffix();

  /**
   * Set the target folder for beans
   *
   * 

defaults to the targetFolder value * * @return target source folder to create the bean sources into */ File getBeansTargetFolder(); /** * Set the target folder * * @return target source folder to create the sources into (e.g. target/generated-sources/java) */ File getTargetFolder(); /** * Set true to create Scala sources instead of Java sources * * @return whether to create Scala sources (default: false) */ boolean isCreateScalaSources(); /** * Set the package name * * @return package name for sources */ String getPackageName(); /** * Override the bean package name (default: packageName) * * @return package name for bean sources */ String getBeanPackageName(); /** * Set whether inner classes should be created for keys * * @return whether inner classes should be created for keys */ boolean isInnerClassesForKeys(); /** * Override the NamingStrategy (default: new DefaultNamingStrategy()) * * @return naming strategy to override (default: new DefaultNamingStrategy()) */ Class getNamingStrategyClass(); /** * Set the schema pattern filter to be used * * @return a schema name pattern; must match the schema name as it is stored in the database; "" * retrieves those without a schema; {@code null} means that the schema name should not be * used to narrow the search (default: null) */ String getSchemaPattern(); /** * @return a catalog name; must match the catalog name as it is stored in the database; "" * retrieves those without a catalog; null means that the catalog name should not * be used to narrow the search */ String getCatalogPattern(); /** * Set the table name pattern filter to be used * * @return a table name pattern; must match the table name as it is stored in the database * (default: null) */ String getTableNamePattern(); /** * @return whether column annotations should be created */ boolean isColumnAnnotations(); /** * @return whether validation annotations should be created */ boolean isValidationAnnotations(); /** * !!! Important !!! {@link NamingStrategy#getPackage(String, SchemaAndTable)} will be * invoked only if schemaToPackage is set to true. * * @deprecated This flag will not be necessary in the future because the generated package name * can be controlled in method {@link NamingStrategy#getPackage(String, SchemaAndTable)}. * @return whether schema names should be appended to the package name. */ @Deprecated boolean isSchemaToPackage(); /** * @return whether names should be normalized to lowercase */ boolean isLowerCase(); /** * @return whether tables should be exported */ boolean isExportTables(); /** * @return whether views should be exported */ boolean isExportViews(); /** * @return whether all table types should be exported */ boolean isExportAll(); /** * @return whether serialize beans as well */ boolean isExportBeans(); /** * @return whether primary keys should be exported */ boolean isExportPrimaryKeys(); /** * @return whether foreign keys should be exported */ boolean isExportForeignKeys(); /** * @return whether direct foreign keys should be exported */ boolean isExportDirectForeignKeys(); /** * @return whether inverse foreign keys should be exported */ boolean isExportInverseForeignKeys(); /** * @return the source encoding */ Charset getSourceEncoding(); /** * @return the table types to export as a comma separated string */ String getTableTypesToExport(); /** * Set the java imports * * @return java imports array */ List getImports(); /** * Set the fully qualified class name of the "generated" annotation added ot the generated sources * * @return the fully qualified class name of the Single-Element Annotation (with {@code * String} element) to be used on the generated sources, or {@code null} (defaulting to {@code * javax.annotation.Generated} or {@code javax.annotation.processing.Generated} depending on * the java version). * @see Single-Element * Annotation */ String getGeneratedAnnotationClass(); /** * Set the Bean serializer class to create bean types as well * * @return serializer for JavaBeans (default: null) */ Class getBeanSerializerClass(); /** * @return additional interfaces to be implemented by beans */ String[] getBeanInterfaces(); /** * @return switch for {@code toString} addition */ boolean isBeanAddToString(); /** * @return switch for full constructor addition */ boolean isBeanAddFullConstructor(); /** * @return switch to print supertype content */ boolean isBeanPrintSupertype(); /** * @return custom type classnames to use */ List getCustomTypes(); /** * @return custom type mappings to use */ List getTypeMappings(); /** * @return custom numeric mappings */ List getNumericMappings(); /** * @return custom rename mappings */ List getRenameMappings(); /** * @return the column comparator class */ Class> getColumnComparatorClass(); /** * @return the serializer class */ Class getSerializerClass(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy