ENTITY
- The type of the class being persisted.public class DirectPrimaryKey<ENTITY> extends Object implements PrimaryKey<ENTITY,ENTITY>
Most users of hrorm will have no need to directly use this.
Constructor and Description |
---|
DirectPrimaryKey(String prefix,
String name,
String sequenceName,
Function<ENTITY,Long> getter,
BiConsumer<ENTITY,Long> setter) |
Modifier and Type | Method and Description |
---|---|
GenericColumn<Long> |
asGenericColumn()
Returns a generic column instance that supports the underlying
DBTYPE |
Long |
getKey(ENTITY item)
Reads the value of the primary key from the passed entity object.
|
String |
getName()
The name of the database column this instance represents.
|
String |
getPrefix()
The prefix that should be used for this column when generating
SQL.
|
String |
getSequenceName()
The name of the database sequence that is used to populate this key
|
String |
getSqlTypeName()
Returns the name of the column type in SQL, e.g.
|
boolean |
isNullable()
Indicator of whether or not this column is nullable or not.
|
boolean |
isPrimaryKey()
Flag indicating whether or not this column is the primary key of the table
|
void |
notNull()
Calling this method will enforce a not-null constraint on this column.
|
void |
optimisticSetKey(ENTITY item,
Long id)
Sets the key onto the object
|
PopulateResult |
populate(ENTITY constructor,
ResultSet resultSet)
Populates the passed builder object with the data read from the database.
|
void |
setSqlTypeName(String sqlTypeName)
Set the name of the type of this column as it would be in the SQL schema.
|
void |
setValue(ENTITY item,
int index,
PreparedStatement preparedStatement)
Sets a value onto the prepared statement based on the state of the object passed.
|
Set<Integer> |
supportedTypes()
The members of
java.sql.Types that this column should support. |
Long |
toClassType(Long value)
Applies any
Converter associated with this column to
a raw database type. |
Column<Long,Long,ENTITY,ENTITY> |
withPrefix(String newPrefix,
Prefixer prefixer)
Make a new instance of the column, identical to this instance, except with a
new prefix.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getKeyPrimitive
fromResultSet, isParentColumn
public Long getKey(ENTITY item)
PrimaryKey
getKey
in interface PrimaryKey<ENTITY,ENTITY>
item
- The object whose primary key is to be read.public String getSequenceName()
PrimaryKey
getSequenceName
in interface PrimaryKey<ENTITY,ENTITY>
public void optimisticSetKey(ENTITY item, Long id)
PrimaryKey
optimisticSetKey
in interface PrimaryKey<ENTITY,ENTITY>
item
- the object whose key is to be setid
- the primary key to assign itpublic String getName()
Column
public String getPrefix()
Column
public PopulateResult populate(ENTITY constructor, ResultSet resultSet) throws SQLException
Column
public void setValue(ENTITY item, int index, PreparedStatement preparedStatement) throws SQLException
Column
public Column<Long,Long,ENTITY,ENTITY> withPrefix(String newPrefix, Prefixer prefixer)
Column
public boolean isPrimaryKey()
Column
public void notNull()
Column
public Set<Integer> supportedTypes()
Column
java.sql.Types
that this column should support.public boolean isNullable()
Column
public String getSqlTypeName()
Column
String
,
"decimal" for BigDecimal
.public void setSqlTypeName(String sqlTypeName)
Column
public Long toClassType(Long value)
Column
Converter
associated with this column to
a raw database type.public GenericColumn<Long> asGenericColumn()
Column
DBTYPE
Copyright © 2019. All rights reserved.