net.ontopia.persistence.proxy
Class HighLowKeyGenerator
java.lang.Object
net.ontopia.persistence.proxy.HighLowKeyGenerator
- All Implemented Interfaces:
- KeyGeneratorIF
public final class HighLowKeyGenerator
- extends Object
- implements KeyGeneratorIF
INTERNAL: A key generator using the HIGH/LOW key generator
algorithm. It maintains the current counters in a counter
table. The key generator is able to preallocate a number of
identities which it hand out without having to go the database for
every new identity needed. It is used by the RDBMS proxy
implementation.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
connfactory
protected ConnectionFactoryIF connfactory
table
protected String table
keycol
protected String keycol
valcol
protected String valcol
grabsize
protected int grabsize
global_entry
protected String global_entry
database
protected String database
properties
protected Map properties
value
protected long value
max_value
protected long max_value
HighLowKeyGenerator
public HighLowKeyGenerator(ConnectionFactoryIF connfactory,
String table,
String keycol,
String valcol,
String global_entry,
int grabsize,
String database,
Map properties)
generateKey
public IdentityIF generateKey(Object type)
- Description copied from interface:
KeyGeneratorIF
- INTERNAL: Generates a new object identity of the specified object
type.
- Specified by:
generateKey in interface KeyGeneratorIF
incrementInDatabase
protected long incrementInDatabase(Object type)
- INTERNAL: Sends a request to the database to retrieve the current
counter value. The counter value row is then locked, the counter
incremented and the new value stored.
Copyright © 2000-2012 Ontopia.