public abstract class AbstractJDBCSeq extends Object implements JDBCSeq
| Modifier and Type | Field and Description |
|---|---|
protected Object |
current |
protected int |
type |
TYPE_CONTIGUOUS, TYPE_DEFAULT, TYPE_NONTRANSACTIONAL, TYPE_TRANSACTIONAL| Constructor and Description |
|---|
AbstractJDBCSeq() |
| Modifier and Type | Method and Description |
|---|---|
void |
addSchema(ClassMapping mapping,
SchemaGroup group)
No-op.
|
void |
allocate(int additional,
StoreContext ctx,
ClassMetaData meta)
Allocate additional values efficiently.
|
protected void |
allocateInternal(int additional,
JDBCStore store,
ClassMapping mapping)
Allocate additional sequence values.
|
void |
close()
No-op.
|
protected void |
closeConnection(Connection conn)
Close the current connection.
|
Object |
current(StoreContext ctx,
ClassMetaData meta)
Return the current value of the sequence, or null if not available.
|
protected Object |
currentInternal(JDBCStore store,
ClassMapping mapping)
Return the current sequence object.
|
abstract JDBCConfiguration |
getConfiguration()
Return the
JDBCConfiguration for this sequence. |
protected Connection |
getConnection(JDBCStore store) |
protected Connection |
getConnection(JDBCStore store,
boolean forceNewConnection)
Return the connection to use based on the type of sequence.
|
Object |
next(StoreContext ctx,
ClassMetaData meta)
Return the next value in the sequence.
|
protected abstract Object |
nextInternal(JDBCStore store,
ClassMapping mapping)
Return the next sequence object.
|
void |
setType(int type)
Records the sequence type.
|
protected boolean |
suspendInJTA()
Detect whether or not OpenJPA should suspend the transaction in
a managed environment.
|
protected int type
protected Object current
public void setType(int type)
public Object next(StoreContext ctx, ClassMetaData meta)
Seqpublic Object current(StoreContext ctx, ClassMetaData meta)
Seqpublic void allocate(int additional,
StoreContext ctx,
ClassMetaData meta)
Seqpublic void addSchema(ClassMapping mapping, SchemaGroup group)
public void close()
protected abstract Object nextInternal(JDBCStore store, ClassMapping mapping) throws Exception
Exceptionpublic abstract JDBCConfiguration getConfiguration()
JDBCConfiguration for this sequence.protected Object currentInternal(JDBCStore store, ClassMapping mapping) throws Exception
Exceptionprotected void allocateInternal(int additional,
JDBCStore store,
ClassMapping mapping)
throws Exception
Exceptionprotected Connection getConnection(JDBCStore store) throws SQLException
SQLExceptionbut without forcing a connection.protected Connection getConnection(JDBCStore store, boolean forceNewConnection) throws SQLException
Return the connection to use based on the type of sequence. This connection will automatically be closed; do not close it.
forceNewConnection - if true a new connection will be forcedTYPE_TRANSACTIONAL or
TYPE_CONTIGUOUS the connection from the StoreManager
will be returned.
Otherwise a new connection will be obtained using DataSource2 from the current configuration. In this case autocommit is set to false prior to returning the connection.
SQLExceptionprotected void closeConnection(Connection conn)
TYPE_TRANSACTIONAL or TYPE_CONTIGUOUS
we will decrement the ref count. Otherwise the connection will be
committed and then closed.protected boolean suspendInJTA()
Copyright © 2006–2022 Apache Software Foundation. All rights reserved.