Class DelegatingTemporalTableSupport
java.lang.Object
org.hibernate.dialect.temporal.spi.DelegatingTemporalTableSupport
- All Implemented Interfaces:
TemporalTableSupport
@SPI(IMPLEMENT)
public abstract class DelegatingTemporalTableSupport
extends Object
implements TemporalTableSupport
Provider base which forwards the complete temporal-table contract to one immutable delegate.
Extend this class when a stock profile matches except for a small number of operations. Override only those differences and let every other operation continue to delegate.
- Since:
- 8.0
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreate a selectively overriding strategy around a non-null delegate. -
Method Summary
Modifier and TypeMethodDescriptionbooleanReport whether Hibernate should add its effectivity check constraint for the selected storage strategy.getAsOfOperator(TemporalTableStrategy strategy) Return the SQL operator placed before a historical instant expression.Return the concrete strategy selected when configuration requestsTemporalTableStrategy.AUTO.Render declarations placed inside the temporal table definition.intReturn the default fractional-second precision of temporal effectivity columns.intReturn theSqlTypescode used for temporal effectivity columns.Return the column option which excludes a column from native temporal versioning, ornullwhen no option is needed.Describe, in deterministic order, the schema commands required in addition to the temporal table itself.Render the trailing table options for the supplied table.booleanReport whether the database provides native system-versioned tables.booleanReport whether the strategy can partition current and historical rows.booleansuppressesTemporalTablePrimaryKeys(boolean partitioned) Report whether a partitioned temporal table must omit its primary key.booleanuseAsOfOperator(TemporalTableStrategy strategy) Report whether historical queries useTemporalTableSupport.getAsOfOperator(TemporalTableStrategy)for the selected strategy.booleanReport whether current-data queries useTemporalTableSupport.getAsOfOperator(TemporalTableStrategy)without an explicit historical instant.booleanDecide whether Hibernate should render effectivity-column restrictions from the supplied ephemeral query facts.
-
Constructor Details
-
DelegatingTemporalTableSupport
Create a selectively overriding strategy around a non-null delegate.
-
-
Method Details
-
supportsNativeTemporalTables
public boolean supportsNativeTemporalTables()Description copied from interface:TemporalTableSupportReport whether the database provides native system-versioned tables.- Specified by:
supportsNativeTemporalTablesin interfaceTemporalTableSupport
-
getTemporalColumnType
public int getTemporalColumnType()Description copied from interface:TemporalTableSupportReturn theSqlTypescode used for temporal effectivity columns.- Specified by:
getTemporalColumnTypein interfaceTemporalTableSupport
-
getTemporalColumnPrecision
public int getTemporalColumnPrecision()Description copied from interface:TemporalTableSupportReturn the default fractional-second precision of temporal effectivity columns.- Specified by:
getTemporalColumnPrecisionin interfaceTemporalTableSupport
-
getTemporalTableOptions
Description copied from interface:TemporalTableSupportRender the trailing table options for the supplied table. Use every name in the request verbatim and returnnullwhen no options are needed.- Specified by:
getTemporalTableOptionsin interfaceTemporalTableSupport
-
suppressesTemporalTablePrimaryKeys
public boolean suppressesTemporalTablePrimaryKeys(boolean partitioned) Description copied from interface:TemporalTableSupportReport whether a partitioned temporal table must omit its primary key.- Specified by:
suppressesTemporalTablePrimaryKeysin interfaceTemporalTableSupport
-
supportsTemporalTablePartitioning
public boolean supportsTemporalTablePartitioning()Description copied from interface:TemporalTableSupportReport whether the strategy can partition current and historical rows.- Specified by:
supportsTemporalTablePartitioningin interfaceTemporalTableSupport
-
getTemporalTableAuxiliaryObjects
public List<TemporalTableAuxiliaryObject> getTemporalTableAuxiliaryObjects(TemporalTableDdlRequest request) Description copied from interface:TemporalTableSupportDescribe, in deterministic order, the schema commands required in addition to the temporal table itself. Return an immutable list and do not mutate boot metadata.- Specified by:
getTemporalTableAuxiliaryObjectsin interfaceTemporalTableSupport
-
getExtraTemporalTableDeclarations
Description copied from interface:TemporalTableSupportRender declarations placed inside the temporal table definition. Use every request name verbatim and returnnullwhen none are needed.- Specified by:
getExtraTemporalTableDeclarationsin interfaceTemporalTableSupport
-
createTemporalTableCheckConstraint
Description copied from interface:TemporalTableSupportReport whether Hibernate should add its effectivity check constraint for the selected storage strategy.- Specified by:
createTemporalTableCheckConstraintin interfaceTemporalTableSupport
-
getAsOfOperator
Description copied from interface:TemporalTableSupportReturn the SQL operator placed before a historical instant expression.- Specified by:
getAsOfOperatorin interfaceTemporalTableSupport
-
useAsOfOperator
Description copied from interface:TemporalTableSupportReport whether historical queries useTemporalTableSupport.getAsOfOperator(TemporalTableStrategy)for the selected strategy.- Specified by:
useAsOfOperatorin interfaceTemporalTableSupport
-
useAsOfOperatorForCurrent
Description copied from interface:TemporalTableSupportReport whether current-data queries useTemporalTableSupport.getAsOfOperator(TemporalTableStrategy)without an explicit historical instant.- Specified by:
useAsOfOperatorForCurrentin interfaceTemporalTableSupport
-
useTemporalRestriction
Description copied from interface:TemporalTableSupportDecide whether Hibernate should render effectivity-column restrictions from the supplied ephemeral query facts. Do not retain the request.- Specified by:
useTemporalRestrictionin interfaceTemporalTableSupport
-
getTemporalExclusionColumnOption
Description copied from interface:TemporalTableSupportReturn the column option which excludes a column from native temporal versioning, ornullwhen no option is needed.- Specified by:
getTemporalExclusionColumnOptionin interfaceTemporalTableSupport
-
getDefaultTemporalTableStrategy
Description copied from interface:TemporalTableSupportReturn the concrete strategy selected when configuration requestsTemporalTableStrategy.AUTO.- Specified by:
getDefaultTemporalTableStrategyin interfaceTemporalTableSupport
-