Package org.apache.openjpa.jdbc.kernel
Class ValueTableJDBCSeq
- java.lang.Object
-
- org.apache.openjpa.jdbc.kernel.AbstractJDBCSeq
-
- org.apache.openjpa.jdbc.kernel.TableJDBCSeq
-
- org.apache.openjpa.jdbc.kernel.ValueTableJDBCSeq
-
- All Implemented Interfaces:
JDBCSeq
,Seq
,Configurable
,Closeable
public class ValueTableJDBCSeq extends TableJDBCSeq
Specialization of theTableJDBCSeq
that maintains multiple sequence counts. Each instance of this class represents one row with a known string primary key value, more or less. The table name defaults toOPENJPA_SEQUENCES_TABLE
.- Author:
- Abe White
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.openjpa.jdbc.kernel.TableJDBCSeq
TableJDBCSeq.AllocateSequenceRunnable, TableJDBCSeq.CurrentSequenceRunnable, TableJDBCSeq.Status
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PK_VALUE
-
Fields inherited from class org.apache.openjpa.jdbc.kernel.TableJDBCSeq
ACTION_ADD, ACTION_DROP, ACTION_GET, ACTION_SET, DEFAULT_TABLE
-
Fields inherited from class org.apache.openjpa.jdbc.kernel.AbstractJDBCSeq
current, type
-
Fields inherited from interface org.apache.openjpa.kernel.Seq
TYPE_CONTIGUOUS, TYPE_DEFAULT, TYPE_NONTRANSACTIONAL, TYPE_TRANSACTIONAL
-
-
Constructor Summary
Constructors Constructor Description ValueTableJDBCSeq()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Column
addPrimaryKeyColumn(Table table)
Add the primary key column to the given table and return it.protected java.lang.Object
getPrimaryKey(ClassMapping mapping)
Return the primary key value for the sequence table for the given class.java.lang.String
getPrimaryKeyValue()
The primary key value for this row.static void
main(java.lang.String[] args)
Usage: java org.apache.openjpa.jdbc.kernel.ValueTableJDBCSeq [option]* -action/-a <add | drop | get | set> [primary key value] [value] Where the following options are recognized.static boolean
run(JDBCConfiguration conf, java.lang.String[] args, java.lang.String action, MappingRepository repos, java.lang.ClassLoader loader)
Run the tool.static boolean
run(JDBCConfiguration conf, java.lang.String[] args, Options opts)
Run the tool.void
setPrimaryKeyValue(java.lang.String value)
The primary key value for this row.-
Methods inherited from class org.apache.openjpa.jdbc.kernel.TableJDBCSeq
addSchema, allocateInternal, currentInternal, dropTable, endConfiguration, executeQuery, executeUpdate, getAllocate, getConfiguration, getInitialValue, getPrimaryKeyColumn, getPrimaryKeyColumnIdentifier, getSequence, getSequence, getSequenceColumn, getStatus, getTable, getUniqueColumns, getUniqueConstraintIdentifier, getUniqueConstraintName, nextInternal, prepareStatement, refreshTable, resolveTableIdentifier, resolveTableName, run, setAllocate, setConfiguration, setIncrement, setInitialValue, setPrimaryKeyColumn, setSequence, setSequenceColumn, setTable, setTableName, setUniqueColumns, setUniqueConstraintName, setUniqueConstraintName, startConfiguration
-
Methods inherited from class org.apache.openjpa.jdbc.kernel.AbstractJDBCSeq
allocate, close, closeConnection, current, getConnection, getConnection, next, setType, suspendInJTA
-
-
-
-
Field Detail
-
PK_VALUE
public static final java.lang.String PK_VALUE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getPrimaryKeyValue
public java.lang.String getPrimaryKeyValue()
The primary key value for this row. Defaults toDEFAULT
.
-
setPrimaryKeyValue
public void setPrimaryKeyValue(java.lang.String value)
The primary key value for this row. Defaults toDEFAULT
.
-
addPrimaryKeyColumn
protected Column addPrimaryKeyColumn(Table table)
Description copied from class:TableJDBCSeq
Add the primary key column to the given table and return it.- Overrides:
addPrimaryKeyColumn
in classTableJDBCSeq
-
getPrimaryKey
protected java.lang.Object getPrimaryKey(ClassMapping mapping)
Description copied from class:TableJDBCSeq
Return the primary key value for the sequence table for the given class.- Overrides:
getPrimaryKey
in classTableJDBCSeq
-
main
public static void main(java.lang.String[] args) throws java.lang.Exception
Usage: java org.apache.openjpa.jdbc.kernel.ValueTableJDBCSeq [option]* -action/-a <add | drop | get | set> [primary key value] [value] Where the following options are recognized.- -properties/-p <properties file or resource>: The
path or resource name of a OpenJPA properties file containing
information such as the license key and connection data as
outlined in
JDBCConfiguration
. Optional. - -<property name> <property value>: All bean
properties of the OpenJPA
JDBCConfiguration
can be set by using their names and supplying a value. For example:-licenseKey adslfja83r3lkadf
- add: Create the sequence table.
- drop: Drop the sequence table.
- get: Print the current sequence value for the given primary key value.
- set: Set the sequence value for the given primary key value.
- Throws:
java.lang.Exception
- -properties/-p <properties file or resource>: The
path or resource name of a OpenJPA properties file containing
information such as the license key and connection data as
outlined in
-
run
public static boolean run(JDBCConfiguration conf, java.lang.String[] args, Options opts) throws java.lang.Exception
Run the tool. Returns false if invalid options were given.- Throws:
java.lang.Exception
-
run
public static boolean run(JDBCConfiguration conf, java.lang.String[] args, java.lang.String action, MappingRepository repos, java.lang.ClassLoader loader) throws java.lang.Exception
Run the tool. Return false if an invalid option was given.- Throws:
java.lang.Exception
-
-