templates.velocity.casban.perschema.constant.vm Maven / Gradle / Ivy
#parse( "schema.include.vm" )
#parse( "header.include.vm" )
#set ( $javaClassName = 'Constant' )
$codewriter.setCurrentJavaFilename($pkg, "${javaClassName}.java")
package $pkg;
import java.util.List;
import java.util.Set;
import gu.sql2java.annotations.SchemaComponent;
import gu.sql2java.annotations.SchemaConstantSupplier;
import com.gitee.l0km.casban.CasbanCachedClassScanner;
import com.gitee.l0km.casban.annotations.AnnotationFieldNames;
import com.gitee.l0km.casban.exception.PackageScanException;
#####################
/**
* constant declare by casban
*/
public class $javaClassName {
/** alias name of connection */
public static String ALIAS_NAME = readAssociatedConstant("ALIAS_NAME");
//////////////////////////////////////
// TABLE CLASS DECLARE
//////////////////////////////////////
#foreach($t in $tables)
public static final Class $t.asConstantVar()_CLASS = readAssociatedConstant("$t.asConstantVar()_CLASS");
#end
//////////////////////////////////////
// COLUMN COLUMN CONSTANT
//////////////////////////////////////
#join($tables '
public static final int $e.asConstantVar()_COLUMN_COUNT = readAssociatedConstant("$e.asConstantVar("_COLUMN_COUNT")");
public static final int $e.asConstantVar()_PK_COUNT = readAssociatedConstant("$e.asConstantVar("_PK_COUNT")");' '')
//////////////////////////////////////
// COLUMN ID DECLARE
//////////////////////////////////////
#foreach($t in $tables)
#foreach ( $column in $t.columns )
#set ( $vcmo = $velocityCount - 1 )
/** Identify the $column.getFullNameNsp() field. */
public static final int $column.getIDAssociated() = readAssociatedConstant("$column.getIDAssociated()");
#if( !$t.stateVarTypeIsArray() )
public static final ${codewriter.bitStateClassName} $column.getIDAssociated()_MASK = readAssociatedConstant("$column.getIDAssociated()_MASK");
#end
#end
#end
//////////////////////////////////////
// COLUMN NAME DECLARE
//////////////////////////////////////
#foreach($t in $tables)
/////////////////// $t.name ////////////
public static final String $t.asConstantVar()_NAME = readAssociatedConstant("$t.asConstantVar()_NAME");
/** Contains all the pk fields name of the $t.name table.*/
public static final String $t.asConstantVar()_PK_FIELDS = readAssociatedConstant("$t.asConstantVar()_PK_FIELDS");
public static final List $t.asConstantVar()_PK_FIELDS_LIST = readAssociatedConstant("$t.asConstantVar()_PK_FIELDS_LIST");
/** Contains all the full fields of the $t.name table.*/
public static final String $t.asConstantVar()_FULL_FIELDS =readAssociatedConstant("$t.asConstantVar()_FULL_FIELDS");
public static final List $t.asConstantVar()_FULL_FIELDS_LIST = readAssociatedConstant("$t.asConstantVar()_FULL_FIELDS_LIST");
public static final Set $t.asConstantVar()_FULL_FIELDS_SET = readAssociatedConstant("$t.asConstantVar()_FULL_FIELDS_SET");
/** Field that contains the comma separated fields of the $t.name table. */
public static final String $t.asConstantVar()_FIELDS = readAssociatedConstant("$t.asConstantVar()_FIELDS");
public static final List $t.asConstantVar()_FIELDS_LIST = readAssociatedConstant("$t.asConstantVar()_FIELDS_LIST");
public static final Set $t.asConstantVar()_FIELDS_SET = readAssociatedConstant("$t.asConstantVar()_FIELDS_SET");
#join($t.columns 'public static final String $e.getNameAssociated() = readAssociatedConstant("$e.getNameAssociated()");
' '')##
/** Field that contains the comma separated java fields of the $t.name table. */
public static final String $t.asConstantVar()_JAVA_FIELDS = readAssociatedConstant("$t.asConstantVar()_JAVA_FIELDS");;
public static final List $t.asConstantVar()_JAVA_FIELDS_LIST = readAssociatedConstant("$t.asConstantVar()_JAVA_FIELDS_LIST");
public static final Set $t.asConstantVar()_JAVA_FIELDS_SET = readAssociatedConstant("$t.asConstantVar()_JAVA_FIELDS_SET");
/** column type names of the $t.name table. */
public static final String[] $t.asConstantVar()_COLUMN_TYPE_NAMES = readAssociatedConstant("$t.asConstantVar()_COLUMN_TYPE_NAMES");
public static final List $t.asConstantVar()_COLUMN_TYPE_NAME_LIST = readAssociatedConstant("$t.asConstantVar()_COLUMN_TYPE_NAME_LIST");
/** Field java types of the $t.name table. */
public static final Class[] $t.asConstantVar()_FIELD_TYPES = readAssociatedConstant("$t.asConstantVar()_FIELD_TYPES");
/** Field size of the $t.name table. */
public static final int[] $t.asConstantVar()_FIELD_SIZES = readAssociatedConstant("$t.asConstantVar()_FIELD_SIZES");
/** Field SQL types of the $t.name table. */
public static final int[] $t.asConstantVar()_FIELD_SQL_TYPES = readAssociatedConstant("$t.asConstantVar()_FIELD_SQL_TYPES");
#end
static T readAssociatedConstant(Object entryValue) {
try {
return CasbanCachedClassScanner.getInstance().readValueByEntry(SchemaComponent.class,SchemaConstantSupplier.class,AnnotationFieldNames.ASSOCIATED,entryValue);
} catch (PackageScanException e) {
throw new PackageScanException(
String.format("NOT FOUND OR FOUND VALUE with %s=%s,caused by %s",AnnotationFieldNames.ASSOCIATED,entryValue,e.getMessage()));
}
}
static T readAssociatedConstant(Object entryValue, T defaultValue) {
return CasbanCachedClassScanner.getInstance().readValueByEntry(SchemaComponent.class,SchemaConstantSupplier.class,AnnotationFieldNames.ASSOCIATED,entryValue,defaultValue);
}
}