Top Description Fields Constructors Methods
org.eclipse.persistence.sequencing

public Class TableSequence

extends QuerySequence
Class Inheritance
Imports
java.io.StringWriter, java.util.List, org.eclipse.persistence.queries.*, org.eclipse.persistence.tools.schemaframework.IndexDefinition, org.eclipse.persistence.internal.databaseaccess.DatabasePlatform, org.eclipse.persistence.internal.helper.DatabaseTable

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.

Field Summary

Modifier and TypeField and Description
protected String
counterFieldName

Hold the name of the column in the sequence table which specifies the sequence numeric value

public static final String
defaultTableName

Default sequence table name

protected String
nameFieldName

Hold the name of the column in the sequence table which specifies the sequence name

protected DatabaseTable
table

Hold the database table

Inherited from org.eclipse.persistence.sequencing.QuerySequence:
selectQueryshouldAcquireValueAfterInsertshouldSelectBeforeUpdateshouldSkipUpdateshouldUseTransactionupdateQuerywasSelectQueryCreatedwasUpdateQueryCreated

Constructor Summary

AccessConstructor and Description
public
public
TableSequence(String name)

Create a new sequence with the name.

public
TableSequence(String name, int size)

Create a new sequence with the name and sequence pre-allocation size.

public
TableSequence(String name, int size, int initialValue)

public
TableSequence(String name, String tableName)

Create a new sequence with the name, and the sequence table name.

public
TableSequence(String name, String tableName, String nameFieldName, String counterFieldName)

Create a new sequence with the name, and the sequence table information.

public
TableSequence(String name, int size, String tableName)

public
TableSequence(String name, int size, String tableName, String nameFieldName, String counterFieldName)

Method Summary

Modifier and TypeMethod and Description
protected ValueReadQuery
protected DataModifyQuery
public boolean
equals(Object
the reference object with which to compare.
obj
)

Overrides org.eclipse.persistence.sequencing.QuerySequence.equals.

Indicates whether some other object is "equal to" this one.
public String
public String
public String
public DatabaseTable
public List<IndexDefinition>
public String
public int
hashCode()

Overrides org.eclipse.persistence.sequencing.QuerySequence.hashCode.

Returns a hash code value for the object.
public boolean
public void
public void
public void
public void
public void
Inherited from org.eclipse.persistence.sequencing.QuerySequence:
buildSelectQuerybuildUpdateQuerycreateArgumentsgetSelectQuerygetUpdateQueryonDisconnectselectsetSelectQuerysetShouldAcquireValueAfterInsertsetShouldSelectBeforeUpdatesetShouldSkipUpdatesetShouldUseTransactionsetUpdateQueryshouldAcquireValueAfterInsertshouldSelectBeforeUpdateshouldSkipUpdateshouldUseTransactionupdateupdateAndSelectSequence

Field Detail

counterFieldNameback to summary
protected String counterFieldName

Hold the name of the column in the sequence table which specifies the sequence numeric value

defaultTableNameback to summary
public static final 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

Annotations
@Deprecated
nameFieldNameback to summary
protected String nameFieldName

Hold the name of the column in the sequence table which specifies the sequence name

tableback to summary
protected DatabaseTable table

Hold the database table

Constructor Detail

TableSequenceback to summary
public TableSequence()
TableSequenceback to summary
public TableSequence(String name)

Create a new sequence with the name.

TableSequenceback to summary
public TableSequence(String name, int size)

Create a new sequence with the name and sequence pre-allocation size.

TableSequenceback to summary
public TableSequence(String name, int size, int initialValue)
TableSequenceback to summary
public TableSequence(String name, String tableName)

Create a new sequence with the name, and the sequence table name.

TableSequenceback to summary
public TableSequence(String name, String tableName, String nameFieldName, String counterFieldName)

Create a new sequence with the name, and the sequence table information.

TableSequenceback to summary
public TableSequence(String name, int size, String tableName)
TableSequenceback to summary
public TableSequence(String name, int size, String tableName, String nameFieldName, String counterFieldName)

Method Detail

buildSelectQueryback to summary
protected ValueReadQuery buildSelectQuery()

Overrides org.eclipse.persistence.sequencing.QuerySequence.buildSelectQuery.

Doc from org.eclipse.persistence.sequencing.QuerySequence.buildSelectQuery.

INTERNAL:

Annotations
@Override
buildUpdateQueryback to summary
protected DataModifyQuery buildUpdateQuery()

Overrides org.eclipse.persistence.sequencing.QuerySequence.buildUpdateQuery.

Doc from org.eclipse.persistence.sequencing.QuerySequence.buildUpdateQuery.

INTERNAL:

Annotations
@Override
equalsback to summary
public boolean equals(Object obj)

Overrides org.eclipse.persistence.sequencing.QuerySequence.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
getCounterFieldNameback to summary
public String getCounterFieldName()
getNameFieldNameback to summary
public String getNameFieldName()
getQualifiedTableNameback to summary
public String getQualifiedTableName()
getTableback to summary
public DatabaseTable getTable()
getTableIndexesback to summary
public List<IndexDefinition> getTableIndexes()
getTableNameback to summary
public String getTableName()
hashCodeback to summary
public int hashCode()

Overrides org.eclipse.persistence.sequencing.QuerySequence.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object.

Annotations
@Override
isTableback to summary
public boolean isTable()

Overrides org.eclipse.persistence.sequencing.Sequence.isTable.

Annotations
@Override
onConnectback to summary
public void onConnect()

Overrides org.eclipse.persistence.sequencing.QuerySequence.onConnect.

Doc from org.eclipse.persistence.sequencing.QuerySequence.onConnect.

INTERNAL:

Annotations
@Override
setCounterFieldNameback to summary
public void setCounterFieldName(String name)
setNameFieldNameback to summary
public void setNameFieldName(String name)
setTableback to summary
public void setTable(DatabaseTable table)
setTableNameback to summary
public void setTableName(String name)