EclipseLink1.0 - 20080707 API Reference

org.eclipse.persistence.sequencing
Class NativeSequence

java.lang.Object
  extended by org.eclipse.persistence.sequencing.Sequence
      extended by org.eclipse.persistence.sequencing.StandardSequence
          extended by org.eclipse.persistence.sequencing.QuerySequence
              extended by org.eclipse.persistence.sequencing.NativeSequence
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class NativeSequence
extends QuerySequence

Purpose: Define a database's native sequencing mechanism.

Description Many databases have built in support for sequencing. This can be a SEQUENCE object such as in Oracle, or a auto-incrementing column such as the IDENTITY field in Sybase. For an auto-incrementing column the preallocation size is always 1. For a SEQUENCE object the preallocation size must match the SEQUENCE objects "increment by".

See Also:
Serialized Form

Field Summary
protected  boolean shouldUseIdentityIfPlatformSupports
          true indicates that identity should be used - if the platform supports identity.
 
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, name, platform, size
 
Constructor Summary
NativeSequence()
           
NativeSequence(boolean shouldUseIdentityIfPlatformSupports)
           
NativeSequence(java.lang.String name)
          Create a new sequence with the name.
NativeSequence(java.lang.String name, boolean shouldUseIdentityIfPlatformSupports)
           
NativeSequence(java.lang.String name, int size)
          Create a new sequence with the name and sequence pre-allocation size.
NativeSequence(java.lang.String name, int size, boolean shouldUseIdentityIfPlatformSupports)
           
NativeSequence(java.lang.String name, int size, int initialValue)
           
NativeSequence(java.lang.String name, int size, int initialValue, boolean shouldUseIdentityIfPlatformSupports)
           
 
Method Summary
protected  ValueReadQuery buildSelectQuery()
          INTERNAL:
protected  ValueReadQuery buildSelectQuery(java.lang.String seqName, java.lang.Integer size)
          INTERNAL:
 boolean equals(java.lang.Object obj)
           
 boolean isNative()
           
 void onConnect()
          INTERNAL:
 void onDisconnect()
          INTERNAL:
 void setShouldUseIdentityIfPlatformSupports(boolean shouldUseIdentityIfPlatformSupports)
           
 boolean shouldUseIdentityIfPlatformSupports()
           
 
Methods inherited from class org.eclipse.persistence.sequencing.QuerySequence
buildUpdateQuery, buildUpdateQuery, createArguments, getSelectQuery, getUpdateQuery, select, setSelectQuery, setShouldAcquireValueAfterInsert, setShouldSelectBeforeUpdate, setShouldSkipUpdate, setShouldUseTransaction, setUpdateQuery, shouldAcquireValueAfterInsert, shouldSelectBeforeUpdate, shouldSkipUpdate, shouldUseTransaction, update, updateAndSelectSequence
 
Methods inherited from class org.eclipse.persistence.sequencing.StandardSequence
createVector, getGeneratedValue, getGeneratedVector, setInitialValue, shouldOverrideExistingValue
 
Methods inherited from class org.eclipse.persistence.sequencing.Sequence
clone, equalNameAndSize, getDatasourcePlatform, getGeneratedValue, getGeneratedVector, getInitialValue, getName, getPreallocationSize, isConnected, isTable, isUnaryTable, onConnect, onDisconnect, setDatasourcePlatform, setName, setPreallocationSize, shouldOverrideExistingValue, shouldUsePreallocation, verifyPlatform
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

shouldUseIdentityIfPlatformSupports

protected boolean shouldUseIdentityIfPlatformSupports
true indicates that identity should be used - if the platform supports identity. false indicates that sequence objects should be used - if the platform supports sequence objects.

Constructor Detail

NativeSequence

public NativeSequence()

NativeSequence

public NativeSequence(boolean shouldUseIdentityIfPlatformSupports)

NativeSequence

public NativeSequence(java.lang.String name)
Create a new sequence with the name.


NativeSequence

public NativeSequence(java.lang.String name,
                      boolean shouldUseIdentityIfPlatformSupports)

NativeSequence

public NativeSequence(java.lang.String name,
                      int size)
Create a new sequence with the name and sequence pre-allocation size.


NativeSequence

public NativeSequence(java.lang.String name,
                      int size,
                      boolean shouldUseIdentityIfPlatformSupports)

NativeSequence

public NativeSequence(java.lang.String name,
                      int size,
                      int initialValue)

NativeSequence

public NativeSequence(java.lang.String name,
                      int size,
                      int initialValue,
                      boolean shouldUseIdentityIfPlatformSupports)
Method Detail

isNative

public boolean isNative()
Overrides:
isNative in class Sequence

setShouldUseIdentityIfPlatformSupports

public void setShouldUseIdentityIfPlatformSupports(boolean shouldUseIdentityIfPlatformSupports)

shouldUseIdentityIfPlatformSupports

public boolean shouldUseIdentityIfPlatformSupports()

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class QuerySequence

buildSelectQuery

protected ValueReadQuery buildSelectQuery()
INTERNAL:

Overrides:
buildSelectQuery in class QuerySequence

buildSelectQuery

protected ValueReadQuery buildSelectQuery(java.lang.String seqName,
                                          java.lang.Integer size)
INTERNAL:

Overrides:
buildSelectQuery in class QuerySequence

onConnect

public void onConnect()
INTERNAL:

Overrides:
onConnect in class QuerySequence

onDisconnect

public void onDisconnect()
INTERNAL:

Overrides:
onDisconnect in class QuerySequence

EclipseLink1.0 - 20080707 API Reference