package org.hibernate.metamodel.source.hbm;
import org.hibernate.metamodel.relational.Datatype;
import org.hibernate.metamodel.relational.Size;
import org.hibernate.metamodel.source.binder.ColumnSource;
class ColumnAttributeSourceImpl implements ColumnSource {
private final String tableName;
private final String columnName;
private boolean includedInInsert;
private boolean includedInUpdate;
private boolean isForceNotNull;
ColumnAttributeSourceImpl(
String tableName,
String columnName,
boolean includedInInsert,
boolean includedInUpdate) {
this(tableName, columnName, includedInInsert, includedInUpdate, false);
}
ColumnAttributeSourceImpl(
String tableName,
String columnName,
boolean includedInInsert,
boolean includedInUpdate,
boolean isForceNotNull) {
this.tableName = tableName;
this.columnName = columnName;
this.includedInInsert = includedInInsert;
this.includedInUpdate = includedInUpdate;
this.isForceNotNull = isForceNotNull;
}
@Override
public boolean isIncludedInInsert() {
return includedInInsert;
}
@Override
public boolean isIncludedInUpdate() {
return includedInUpdate;
}
@Override
public String getContainingTableName() {
return tableName;
}
@Override
public String getName() {
return columnName;
}
@Override
public boolean isNullable() {
return !isForceNotNull;
}
@Override
public String getDefaultValue() {
return null;
}
@Override
public String getSqlType() {
return null;
}
@Override
public Datatype getDatatype() {
return null;
}
@Override
public Size getSize() {
return null;
}
@Override
public String getReadFragment() {
return null;
}
@Override
public String getWriteFragment() {
return null;
}
@Override
public boolean isUnique() {
return false;
}
@Override
public String getCheckCondition() {
return null;
}
@Override
public String getComment() {
return null;
}
}