column.setNotNull(true); if (StringUtils.hasText(columnAnn.columnDefinition())) { column.setColumnDefinition(columnAnn.columnDefinition());
length = persistenceColumn.length(); isReadOnly = !persistenceColumn.updatable(); definition = persistenceColumn.columnDefinition(); });
if ( col.columnDefinition().equals( "" ) ) { sqlType = null; sqlType = normalizer.applyGlobalQuoting( col.columnDefinition() );
@Test public void testColumnNoAttributes() throws Exception { reader = getReader( Entity3.class, "field1", "element-collection.orm16.xml" ); assertAnnotationPresent( ElementCollection.class ); assertAnnotationPresent( Column.class ); Column column = reader.getAnnotation( Column.class ); assertEquals( "", column.name() ); assertFalse( column.unique() ); assertTrue( column.nullable() ); assertTrue( column.insertable() ); assertTrue( column.updatable() ); assertEquals( "", column.columnDefinition() ); assertEquals( "", column.table() ); assertEquals( 255, column.length() ); assertEquals( 0, column.precision() ); assertEquals( 0, column.scale() ); }
@Test public void testColumnAllAttributes() throws Exception { reader = getReader( Entity3.class, "field1", "element-collection.orm17.xml" ); assertAnnotationPresent( ElementCollection.class ); assertAnnotationPresent( Column.class ); Column column = reader.getAnnotation( Column.class ); assertEquals( "col1", column.name() ); assertTrue( column.unique() ); assertFalse( column.nullable() ); assertFalse( column.insertable() ); assertFalse( column.updatable() ); assertEquals( "int", column.columnDefinition() ); assertEquals( "table1", column.table() ); assertEquals( 50, column.length() ); assertEquals( 2, column.precision() ); assertEquals( 1, column.scale() ); }
revisionPropSqlType = revisionPropColumn.columnDefinition();
assertTrue( overrides[0].column().insertable() ); assertTrue( overrides[0].column().updatable() ); assertEquals( "", overrides[0].column().columnDefinition() ); assertEquals( "", overrides[0].column().table() ); assertEquals( 255, overrides[0].column().length() ); assertFalse( overrides[1].column().insertable() ); assertFalse( overrides[1].column().updatable() ); assertEquals( "int", overrides[1].column().columnDefinition() ); assertEquals( "table1", overrides[1].column().table() ); assertEquals( 50, overrides[1].column().length() );
assertTrue( overrides[0].column().insertable() ); assertTrue( overrides[0].column().updatable() ); assertEquals( "", overrides[0].column().columnDefinition() ); assertEquals( "", overrides[0].column().table() ); assertEquals( 255, overrides[0].column().length() ); assertFalse( overrides[1].column().insertable() ); assertFalse( overrides[1].column().updatable() ); assertEquals( "int", overrides[1].column().columnDefinition() ); assertEquals( "table1", overrides[1].column().table() ); assertEquals( 50, overrides[1].column().length() );
assertTrue( overrides[0].column().insertable() ); assertTrue( overrides[0].column().updatable() ); assertEquals( "", overrides[0].column().columnDefinition() ); assertEquals( "", overrides[0].column().table() ); assertEquals( 255, overrides[0].column().length() ); assertFalse( overrides[1].column().insertable() ); assertFalse( overrides[1].column().updatable() ); assertEquals( "int", overrides[1].column().columnDefinition() ); assertEquals( "table1", overrides[1].column().table() ); assertEquals( 50, overrides[1].column().length() );
protected void readColumn(Column columnAnn, DeployBeanProperty prop) { if (!isEmpty(columnAnn.name())) { String dbColumn = databasePlatform.convertQuotedIdentifiers(columnAnn.name()); prop.setDbColumn(dbColumn); } prop.setDbInsertable(columnAnn.insertable()); prop.setDbUpdateable(columnAnn.updatable()); prop.setNullable(columnAnn.nullable()); prop.setUnique(columnAnn.unique()); if (columnAnn.precision() > 0) { prop.setDbLength(columnAnn.precision()); } else if (columnAnn.length() != 255) { // set default 255 on DbTypeMap prop.setDbLength(columnAnn.length()); } prop.setDbScale(columnAnn.scale()); prop.setDbColumnDefn(columnAnn.columnDefinition()); String baseTable = descriptor.getBaseTable(); String tableName = columnAnn.table(); if (!"".equals(tableName) && !tableName.equalsIgnoreCase(baseTable)) { // its on a secondary table... prop.setSecondaryTable(tableName); } }
public static JdbcType getColumnType(Column column, Field field) { if (!"".equals(column.columnDefinition().trim())) { String columnDefinition_ = column.columnDefinition().indexOf(" ") > -1 ? column.columnDefinition().substring(0, column.columnDefinition().indexOf(" ")) : column.columnDefinition(); JdbcType jdbcType = JdbcTypeEnum.forName(columnDefinition_); if (jdbcType != null) { return jdbcType; } } if (TypeJdbcTypeConverter.map.get(field.getType()) != null) { return TypeJdbcTypeConverter.map.get(field.getType()); } else { return JdbcType.OTHER; } }
private static String getColumnDefinition(AccessibleObject ao, Class<?> type) { Column col = ao.getAnnotation(Column.class); String colDef = null; if (col == null || col.columnDefinition().isEmpty()) { if (type.isEnum()) { colDef = "VARCHAR(50)"; } else { colDef = getDefaultColumnType(type, col); } } else { colDef = col.columnDefinition().toUpperCase(); } return colDef; }
public String getAttribute(final Class entityClass, final String property) { TableAttribute attr = TableAttribute.createTableAttribute(entityClass, property); if (attr == null) return ""; final Column columnAnnotation = attr.getAnnotation(Column.class); if (columnAnnotation != null && StringUtils.isNotEmpty(columnAnnotation.columnDefinition()) == true) { return columnAnnotation.columnDefinition(); } else { return getDatabaseSupport().getType(attr); } }
final ObjectNameNormalizer nameNormalizer = mappings.getObjectNameNormalizer(); javax.persistence.Column col = actualCols[index]; final String sqlType = col.columnDefinition().equals( "" ) ? null : nameNormalizer.normalizeIdentifierQuoting( col.columnDefinition() ); final String tableName = nameNormalizer.normalizeIdentifierQuoting( col.table() ); final String columnName = nameNormalizer.normalizeIdentifierQuoting( col.name() );
/** * Setup the given column with information from the given annotation. */ private static void setupColumn(Column col, javax.persistence.Column anno) { if (!StringUtils.isEmpty(anno.name())) col.setName(anno.name()); if (!StringUtils.isEmpty(anno.columnDefinition())) col.setTypeName(anno.columnDefinition()); if (anno.precision() != 0) col.setSize(anno.precision()); else if (anno.length() != 255) col.setSize(anno.length()); col.setNotNull(!anno.nullable()); col.setDecimalDigits(anno.scale()); col.setFlag(Column.FLAG_UNINSERTABLE, !anno.insertable()); col.setFlag(Column.FLAG_UNUPDATABLE, !anno.updatable()); }
/** * Setup the given column with information from the given annotation. */ private static void setupColumn(Column col, javax.persistence.Column anno, boolean delimit) { if (!StringUtils.isEmpty(anno.name())) col.setIdentifier(DBIdentifier.newColumn(anno.name(),delimit)); if (!StringUtils.isEmpty(anno.columnDefinition())) col.setTypeIdentifier(DBIdentifier.newColumnDefinition(anno.columnDefinition())); if (anno.precision() != 0) col.setSize(anno.precision()); else if (anno.length() != 255) col.setSize(anno.length()); col.setNotNull(!anno.nullable()); col.setDecimalDigits(anno.scale()); col.setFlag(Column.FLAG_UNINSERTABLE, !anno.insertable()); col.setFlag(Column.FLAG_UNUPDATABLE, !anno.updatable()); }
/** * Setup the given column with information from the given annotation. */ private static void setupColumn(Column col, javax.persistence.Column anno, boolean delimit) { if (!StringUtil.isEmpty(anno.name())) col.setIdentifier(DBIdentifier.newColumn(anno.name(),delimit)); if (!StringUtil.isEmpty(anno.columnDefinition())) col.setTypeIdentifier(DBIdentifier.newColumnDefinition(anno.columnDefinition())); if (anno.precision() != 0) col.setSize(anno.precision()); else if (anno.length() != 255) col.setSize(anno.length()); col.setNotNull(!anno.nullable()); col.setDecimalDigits(anno.scale()); col.setFlag(Column.FLAG_UNINSERTABLE, !anno.insertable()); col.setFlag(Column.FLAG_UNUPDATABLE, !anno.updatable()); }
/** * Setup the given column with information from the given annotation. */ private static void setupColumn(Column col, javax.persistence.Column anno, boolean delimit) { if (!StringUtil.isEmpty(anno.name())) col.setIdentifier(DBIdentifier.newColumn(anno.name(),delimit)); if (!StringUtil.isEmpty(anno.columnDefinition())) col.setTypeIdentifier(DBIdentifier.newColumnDefinition(anno.columnDefinition())); if (anno.precision() != 0) col.setSize(anno.precision()); else if (anno.length() != 255) col.setSize(anno.length()); col.setNotNull(!anno.nullable()); col.setDecimalDigits(anno.scale()); col.setFlag(Column.FLAG_UNINSERTABLE, !anno.insertable()); col.setFlag(Column.FLAG_UNUPDATABLE, !anno.updatable()); }
public ColumnConfig(Column column) { setName(column.name()); setUnique(column.unique()); setNullable(column.nullable()); setInsertable(column.insertable()); setUpdatable(column.updatable()); setColumnDefinition(column.columnDefinition()); setTable(column.table()); setLength(column.length()); setPrecision(column.precision()); setScale(column.scale()); }
/** * Fill the column value by introspection */ public void introspect(Column column) { setName(column.name()); setUnique(column.unique()); setNullable(column.nullable()); setInsertable(column.insertable()); setUpdatable(column.updatable()); setColumnDefinition(column.columnDefinition()); setTable(column.table()); setLength(column.length()); setPrecision(column.precision()); setScale(column.scale()); } }