Validate.notNull(javaTypeDetails,
"The type specified, '%s', doesn't exist", typeName);
final String physicalTypeIdentifier = javaTypeDetails
.getDeclaredByMetadataId();
final DateField fieldDetails = new DateField(physicalTypeIdentifier,
fieldType, fieldName);
fieldDetails.setNotNull(notNull);
fieldDetails.setNullRequired(nullRequired);
fieldDetails.setFuture(future);
fieldDetails.setPast(past);
if (JdkJavaType.isDateField(fieldType)) {
fieldDetails
.setPersistenceType(persistenceType != null ? persistenceType
: DateFieldPersistenceType.JPA_TIMESTAMP);
}
if (column != null) {
fieldDetails.setColumn(column);
}
if (comment != null) {
fieldDetails.setComment(comment);
}
if (dateFormat != null) {
fieldDetails.setDateFormat(dateFormat);
}
if (timeFormat != null) {
fieldDetails.setTimeFormat(timeFormat);
}
if (pattern != null) {
fieldDetails.setPattern(pattern);
}
if (value != null) {
fieldDetails.setValue(value);
}
insertField(fieldDetails, permitReservedWords, transientModifier);
}