java.lang.Object
io.ebean.config.dbplatform.SimpleSequenceIdGenerator
- All Implemented Interfaces:
PlatformIdGenerator
A very simple Database sequence based IdGenerator.
One which batch requests sequence Id's would be better for performance.
-
Field Summary
Fields inherited from interface io.ebean.config.dbplatform.PlatformIdGenerator
AUTO_UUID
-
Constructor Summary
ConstructorDescriptionSimpleSequenceIdGenerator
(DataSource dataSource, String sql, String seqName) Construct given a dataSource and sql to return the next sequence value. -
Method Summary
Modifier and TypeMethodDescriptiongetName()
Return the name of the IdGenerator.boolean
Return true if this is a DB sequence.return the next unique identity value.void
preAllocateIds
(int batchSize) Is called prior to inserting OneToMany's as an indication that a number of beans are likely to need id's shortly.
-
Constructor Details
-
SimpleSequenceIdGenerator
Construct given a dataSource and sql to return the next sequence value.
-
-
Method Details
-
getName
Description copied from interface:PlatformIdGenerator
Return the name of the IdGenerator. For sequences this is the sequence name.- Specified by:
getName
in interfacePlatformIdGenerator
-
isDbSequence
public boolean isDbSequence()Description copied from interface:PlatformIdGenerator
Return true if this is a DB sequence.- Specified by:
isDbSequence
in interfacePlatformIdGenerator
-
preAllocateIds
public void preAllocateIds(int batchSize) Description copied from interface:PlatformIdGenerator
Is called prior to inserting OneToMany's as an indication that a number of beans are likely to need id's shortly.Can be used as a performance optimisation to prefetch a number of Id's. Especially when the allocateSize is very large.
- Specified by:
preAllocateIds
in interfacePlatformIdGenerator
-
nextId
Description copied from interface:PlatformIdGenerator
return the next unique identity value.Note the transaction passed in can be null.
- Specified by:
nextId
in interfacePlatformIdGenerator
-