isUnique = persistenceColumn.unique(); isNullable = persistenceColumn.nullable(); length = persistenceColumn.length();
@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() ); }
@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() ); }
col.nullable() column.setUnique( col.unique() ); column.setInsertable( col.insertable() ); column.setUpdatable( col.updatable() );
if (column != null) { assertNotADuplicateName(column.name(), null); Validate.isTrue(column.unique() == false, "Should not use unique attribute on column (use named @UniqueConstraint instead) on " + theAnnotatedElement.toString());
assertEquals( "field1", overrides[0].name() ); assertEquals( "", overrides[0].column().name() ); assertFalse( overrides[0].column().unique() ); assertTrue( overrides[0].column().nullable() ); assertTrue( overrides[0].column().insertable() ); assertEquals( "field2", overrides[1].name() ); assertEquals( "col1", overrides[1].column().name() ); assertTrue( overrides[1].column().unique() ); assertFalse( overrides[1].column().nullable() ); assertFalse( overrides[1].column().insertable() );
assertEquals( "field1", overrides[0].name() ); assertEquals( "", overrides[0].column().name() ); assertFalse( overrides[0].column().unique() ); assertTrue( overrides[0].column().nullable() ); assertTrue( overrides[0].column().insertable() ); assertEquals( "field2", overrides[1].name() ); assertEquals( "col1", overrides[1].column().name() ); assertTrue( overrides[1].column().unique() ); assertFalse( overrides[1].column().nullable() ); assertFalse( overrides[1].column().insertable() );
assertEquals( "field1", overrides[0].name() ); assertEquals( "", overrides[0].column().name() ); assertFalse( overrides[0].column().unique() ); assertTrue( overrides[0].column().nullable() ); assertTrue( overrides[0].column().insertable() ); assertEquals( "field2", overrides[1].name() ); assertEquals( "col1", overrides[1].column().name() ); assertTrue( overrides[1].column().unique() ); assertFalse( overrides[1].column().nullable() ); assertFalse( overrides[1].column().insertable() );
private static boolean getColumnUnique(PropertyDescriptor pd, Method method) { boolean unique = false; if(isJPAClassAvaiable) { javax.persistence.Column annColumn = (javax.persistence.Column)method.getAnnotation(javax.persistence.Column.class); if(annColumn != null) { unique = annColumn.unique(); } } return unique; }
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); } }
private List<String> validateSimpleUniqueConstraintsDefinedOnFields(Identifiable<?> entity) { Class<?> entityClass = getClassWithoutInitializingProxy(entity); List<String> errors = newArrayList(); for (Field field : entityClass.getFields()) { Column column = field.getAnnotation(Column.class); if (column != null && column.unique()) { Map<String, Object> values = newHashMap(); values.put(field.getName(), jpaUtil.getValueFromField(field, entity)); if (existsInDatabaseOnAllObjects(entity, values)) { errors.add(simpleUniqueConstraintError(entity, field.getName())); } } } return errors; }
private List<String> validateSimpleUniqueConstraintsDefinedOnFields(Identifiable<?> entity) { Class<?> entityClass = getClassWithoutInitializingProxy(entity); List<String> errors = newArrayList(); for (Field field : entityClass.getFields()) { Column column = field.getAnnotation(Column.class); if (column != null && column.unique()) { Map<String, Object> values = newHashMap(); values.put(field.getName(), jpaUtil.getValueFromField(field, entity)); if (existsInDatabaseOnAllObjects(entity, values)) { errors.add(simpleUniqueConstraintError(entity, field.getName())); } } } return errors; }
private boolean isUnique() { if (isId()) { return true; } Column col = this.accessible.getAnnotation(Column.class); return col != null && col.unique(); }
private List<String> validateSimpleUniqueConstraintsDefinedOnMethods(Identifiable<?> entity) { Class<?> entityClass = getClassWithoutInitializingProxy(entity); List<String> errors = newArrayList(); for (Method method : entityClass.getMethods()) { Column column = entityClass.getAnnotation(Column.class); if (column != null && column.unique()) { Map<String, Object> values = newHashMap(); String property = jpaUtil.methodToProperty(method); values.put(property, invokeMethod(method, entity)); if (existsInDatabaseOnAllObjects(entity, values)) { errors.add(simpleUniqueConstraintError(entity, property)); } } } return errors; }
private List<String> validateSimpleUniqueConstraintsDefinedOnMethods(Identifiable<?> entity) { Class<?> entityClass = getClassWithoutInitializingProxy(entity); List<String> errors = newArrayList(); for (Method method : entityClass.getMethods()) { Column column = entityClass.getAnnotation(Column.class); if (column != null && column.unique()) { Map<String, Object> values = newHashMap(); String property = jpaUtil.methodToProperty(method); values.put(property, invokeMethod(method, entity)); if (existsInDatabaseOnAllObjects(entity, values)) { errors.add(simpleUniqueConstraintError(entity, property)); } } } return errors; }
col.nullable() column.setUnique( col.unique() ); column.setInsertable( col.insertable() ); column.setUpdatable( col.updatable() );
/** * @param locator * the java locator * @param annotation * the annotation * * @since 2.0.0 */ public ColumnMetadataImpl(AbstractLocator locator, Column annotation) { super(); this.locator = locator; this.columnDefinition = annotation.columnDefinition(); this.insertable = annotation.insertable(); this.length = annotation.length(); this.name = annotation.name(); this.nullable = annotation.nullable(); this.precision = annotation.precision(); this.scale = annotation.scale(); this.table = annotation.table(); this.unique = annotation.unique(); this.updatable = annotation.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()); } }
/** * INTERNAL: */ public MetadataColumn(Column column, String attributeName, AnnotatedElement annotatedElement) { this(attributeName, annotatedElement); if (column != null) { // Apply the values from the column annotation. m_databaseField.setUnique(column.unique()); m_databaseField.setNullable(column.nullable()); m_databaseField.setUpdatable(column.updatable()); m_databaseField.setInsertable(column.insertable()); m_databaseField.setScale(column.scale()); m_databaseField.setLength(column.length()); m_databaseField.setPrecision(column.precision()); m_databaseField.setName(column.name()); m_databaseField.setTableName(column.table()); m_databaseField.setColumnDefinition(column.columnDefinition()); } }