Class TableSequence
- java.lang.Object
-
- org.eclipse.persistence.sequencing.Sequence
-
- org.eclipse.persistence.sequencing.StandardSequence
-
- org.eclipse.persistence.sequencing.QuerySequence
-
- org.eclipse.persistence.sequencing.TableSequence
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable
public class TableSequence extends QuerySequence
Purpose: Defines sequencing through using a SEQUENCE table.
Description This is the default sequencing mechanism. A table defaulting to SEQUENCE is used to generate unique ids. The table has a name field (SEQ_NAME) storing each sequences name, and a counter (SEQ_COUNT) storing the last sequence id generated. There will be a row in the table for each sequence object.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.StringcounterFieldNameHold the name of the column in the sequence table which specifies the sequence numeric valuestatic java.lang.StringdefaultTableNameDeprecated.Use an empty string as a default sequence table name instead, that triggers usage of platform.getDefaultSequenceTableName() when the sequence is connected.protected java.lang.StringnameFieldNameHold the name of the column in the sequence table which specifies the sequence nameprotected org.eclipse.persistence.internal.helper.DatabaseTabletableHold the database table-
Fields inherited from class org.eclipse.persistence.sequencing.QuerySequence
selectQuery, shouldAcquireValueAfterInsert, shouldSelectBeforeUpdate, shouldSkipUpdate, shouldUseTransaction, updateQuery, wasSelectQueryCreated, wasUpdateQueryCreated
-
Fields inherited from class org.eclipse.persistence.sequencing.Sequence
depth, initialValue, isCustomQualifier, name, platform, qualifier, shouldAlwaysOverrideExistingValue, size
-
-
Constructor Summary
Constructors Constructor Description TableSequence()TableSequence(java.lang.String name)Create a new sequence with the name.TableSequence(java.lang.String name, int size)Create a new sequence with the name and sequence pre-allocation size.TableSequence(java.lang.String name, int size, int initialValue)TableSequence(java.lang.String name, int size, java.lang.String tableName)TableSequence(java.lang.String name, int size, java.lang.String tableName, java.lang.String nameFieldName, java.lang.String counterFieldName)TableSequence(java.lang.String name, java.lang.String tableName)Create a new sequence with the name, and the sequence table name.TableSequence(java.lang.String name, java.lang.String tableName, java.lang.String nameFieldName, java.lang.String counterFieldName)Create a new sequence with the name, and the sequence table information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ValueReadQuerybuildSelectQuery()INTERNAL:protected DataModifyQuerybuildUpdateQuery()INTERNAL:booleanequals(java.lang.Object obj)java.lang.StringgetCounterFieldName()java.lang.StringgetNameFieldName()java.lang.StringgetQualifiedTableName()org.eclipse.persistence.internal.helper.DatabaseTablegetTable()java.util.List<IndexDefinition>getTableIndexes()java.lang.StringgetTableName()inthashCode()booleanisTable()voidonConnect()INTERNAL:voidsetCounterFieldName(java.lang.String name)voidsetNameFieldName(java.lang.String name)voidsetTable(org.eclipse.persistence.internal.helper.DatabaseTable table)voidsetTableName(java.lang.String name)-
Methods inherited from class org.eclipse.persistence.sequencing.QuerySequence
buildSelectQuery, buildUpdateQuery, createArguments, getSelectQuery, getUpdateQuery, onDisconnect, select, setSelectQuery, setShouldAcquireValueAfterInsert, setShouldSelectBeforeUpdate, setShouldSkipUpdate, setShouldUseTransaction, setUpdateQuery, shouldAcquireValueAfterInsert, shouldSelectBeforeUpdate, shouldSkipUpdate, shouldUseTransaction, update, updateAndSelectSequence
-
Methods inherited from class org.eclipse.persistence.sequencing.StandardSequence
createVector, createVectorAtNextVal, getGeneratedValue, getGeneratedVector, setInitialValue
-
Methods inherited from class org.eclipse.persistence.sequencing.Sequence
clone, equalNameAndSize, getDatasourcePlatform, getGeneratedValue, getGeneratedVector, getInitialValue, getName, getPreallocationSize, getQualified, getQualifier, isConnected, isCustomQualifier, isNative, isUnaryTable, onConnect, onDisconnect, setDatasourcePlatform, setName, setPreallocationSize, setQualifier, setShouldAlwaysOverrideExistingValue, shouldAlwaysOverrideExistingValue, shouldAlwaysOverrideExistingValue, shouldUsePreallocation, toString, verifyPlatform
-
-
-
-
Field Detail
-
defaultTableName
public static final java.lang.String defaultTableName
Deprecated.Use an empty string as a default sequence table name instead, that triggers usage of platform.getDefaultSequenceTableName() when the sequence is connected.Default sequence table name- See Also:
- Constant Field Values
-
table
protected org.eclipse.persistence.internal.helper.DatabaseTable table
Hold the database table
-
counterFieldName
protected java.lang.String counterFieldName
Hold the name of the column in the sequence table which specifies the sequence numeric value
-
nameFieldName
protected java.lang.String nameFieldName
Hold the name of the column in the sequence table which specifies the sequence name
-
-
Constructor Detail
-
TableSequence
public TableSequence()
-
TableSequence
public TableSequence(java.lang.String name)
Create a new sequence with the name.
-
TableSequence
public TableSequence(java.lang.String name, int size)Create a new sequence with the name and sequence pre-allocation size.
-
TableSequence
public TableSequence(java.lang.String name, int size, int initialValue)
-
TableSequence
public TableSequence(java.lang.String name, java.lang.String tableName)Create a new sequence with the name, and the sequence table name.
-
TableSequence
public TableSequence(java.lang.String name, java.lang.String tableName, java.lang.String nameFieldName, java.lang.String counterFieldName)Create a new sequence with the name, and the sequence table information.
-
TableSequence
public TableSequence(java.lang.String name, int size, java.lang.String tableName)
-
TableSequence
public TableSequence(java.lang.String name, int size, java.lang.String tableName, java.lang.String nameFieldName, java.lang.String counterFieldName)
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classQuerySequence
-
hashCode
public int hashCode()
- Overrides:
hashCodein classQuerySequence
-
getCounterFieldName
public java.lang.String getCounterFieldName()
-
setCounterFieldName
public void setCounterFieldName(java.lang.String name)
-
getNameFieldName
public java.lang.String getNameFieldName()
-
setNameFieldName
public void setNameFieldName(java.lang.String name)
-
getTable
public org.eclipse.persistence.internal.helper.DatabaseTable getTable()
-
getTableIndexes
public java.util.List<IndexDefinition> getTableIndexes()
-
getTableName
public java.lang.String getTableName()
-
getQualifiedTableName
public java.lang.String getQualifiedTableName()
-
setTable
public void setTable(org.eclipse.persistence.internal.helper.DatabaseTable table)
-
setTableName
public void setTableName(java.lang.String name)
-
onConnect
public void onConnect()
Description copied from class:QuerySequenceINTERNAL:- Overrides:
onConnectin classQuerySequence
-
buildSelectQuery
protected ValueReadQuery buildSelectQuery()
Description copied from class:QuerySequenceINTERNAL:- Overrides:
buildSelectQueryin classQuerySequence
-
buildUpdateQuery
protected DataModifyQuery buildUpdateQuery()
Description copied from class:QuerySequenceINTERNAL:- Overrides:
buildUpdateQueryin classQuerySequence
-
-