org.apache.ojb.broker.util.sequence
Class SequenceManagerHighLowImpl
java.lang.Object
org.apache.ojb.broker.util.sequence.AbstractSequenceManager
org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl
- All Implemented Interfaces:
- SequenceManager
public class SequenceManagerHighLowImpl
- extends AbstractSequenceManager
High/Low sequence manager implementation generates unique and continuous
id's (during runtime) by using sequences to avoid database access.
Implementation configuration properties:
| Property Key |
Property Values |
| seq.start |
Set the start index of used sequences (e.g. set 100000, id generation starts with 100001).
Default start index is 1.
|
| grabSize |
Integer entry determines the
number of IDs allocated within the
H/L sequence manager implementation.
Default was '20'.
|
| autoNaming |
Default was 'true'. If set 'true' OJB try to build a
sequence name automatic if none found in field-descriptor
and set this generated name as sequence-name
in field-descriptor. If set 'false' OJB throws an exception
if none sequence name was found in field-descriptor.
|
| globalSequenceId |
Deprecated! If set 'true' implementation use global unique
id's for all fields. Default was 'false'.
|
| globalSequenceStart |
Deprecated, use property 'seq.start'. Set the start index of used global id
generation (e.g. set 100000, id generation starts with 100001)
|
| sequenceStart |
Deprecated, use property 'seq.start'. Set the start index of used
sequences (e.g. set 100000, id generation starts with 100001). Default start index is 1.
|
Limitations:
- Do NOT use this implementation in managed environment or
any comparable system where any connection was associated
with the running transaction.
- Version:
- $Id: SequenceManagerHighLowImpl.java,v 1.1 2007-08-24 22:17:29 ewestfal Exp $
- Author:
- Armin Waibel
- See Also:
SequenceManager,
SequenceManagerFactory,
SequenceManagerHelper
| Methods inherited from class org.apache.ojb.broker.util.sequence.AbstractSequenceManager |
afterStore, calculateSequenceName, getBrokerForClass, getConfigurationProperties, getConfigurationProperty, getPlatform, getUniqueValue, setConfigurationProperties, setConfigurationProperty, setReferenceFKs, useAutoNaming |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PROPERTY_GRAB_SIZE
public static final String PROPERTY_GRAB_SIZE
- See Also:
- Constant Field Values
PROPERTY_GLOBAL_SEQUENCE_ID
public static final String PROPERTY_GLOBAL_SEQUENCE_ID
- See Also:
- Constant Field Values
PROPERTY_GLOBAL_SEQUENCE_START
public static final String PROPERTY_GLOBAL_SEQUENCE_START
- See Also:
- Constant Field Values
sequencesDBMap
protected static Map sequencesDBMap
useGlobalSequenceIdentities
protected boolean useGlobalSequenceIdentities
grabSize
protected int grabSize
sequenceStart
protected long sequenceStart
attempts
protected int attempts
SequenceManagerHighLowImpl
public SequenceManagerHighLowImpl(PersistenceBroker broker)
getUniqueLong
protected long getUniqueLong(FieldDescriptor field)
throws SequenceManagerException
- Description copied from class:
AbstractSequenceManager
- returns a unique long value for field.
the returned number is unique accross all tables in the extent of clazz.
- Specified by:
getUniqueLong in class AbstractSequenceManager
- Throws:
SequenceManagerException
removeSequence
protected void removeSequence(String sequenceName)
- Remove the sequence for given sequence name.
- Parameters:
sequenceName - Name of the sequence to remove.
getSequence
protected HighLowSequence getSequence(PersistenceBroker brokerForSequence,
FieldDescriptor field,
String sequenceName)
throws SequenceManagerException
- Throws:
SequenceManagerException
lookupStoreSequence
protected HighLowSequence lookupStoreSequence(PersistenceBroker broker,
FieldDescriptor field,
String seqName)
newSequenceObject
protected HighLowSequence newSequenceObject(String sequenceName,
FieldDescriptor field)
getMaxKeyForSequence
protected long getMaxKeyForSequence(PersistenceBroker broker,
FieldDescriptor field)
Copyright © 2004-2012 The Kuali Foundation. All Rights Reserved.