tigase.db
public interface DataRepository
Modifier and Type | Method and Description |
---|---|
boolean |
checkTable(String tableName)
The method checks whether a table for the given name exists in the
database.
|
boolean |
checkTable(String tableName,
String createTableQuery)
The method checks whether a table for the given name exists in the
database and if it does not, it automatically creates it.
|
void |
commit()
Commits current transaction on the DataRepository connection.
|
Statement |
createStatement(tigase.xmpp.BareJID user_id)
Creates a SQL statement on which SQL queries can be executed later by the
higher repository layer.
|
void |
endTransaction()
Ends current transaction on the DataRepository connection.
|
PreparedStatement |
getPreparedStatement(tigase.xmpp.BareJID user_id,
String stIdKey)
Returns a prepared statement for a given key.
|
String |
getResourceUri()
Returns a DB connection string or DB connection URI.
|
void |
initPreparedStatement(String stIdKey,
String query)
Initializes a prepared statement for a given query and stores it internally
under the given id key.
|
void |
initRepository(String resource_uri,
Map<String,String> params)
The method is called to initialize the data repository.
|
void |
release(Statement stmt,
ResultSet rs)
A helper method to release resources from the statement and result set.
|
void |
releaseRepoHandle(DataRepository repo) |
void |
rollback()
Rolls back started transaction on the DataRepository connection.
|
void |
startTransaction()
Starts transaction on the DataRepository connection.
|
DataRepository |
takeRepoHandle(tigase.xmpp.BareJID user_id)
Returns
DataRepository instance. |
boolean checkTable(String tableName) throws SQLException
tableName
- is a String
value of the table name to checktrue
boolean
value if the table exist in
the database and false
if the table was not found.SQLException
- if there was a problem accessing database.boolean checkTable(String tableName, String createTableQuery) throws SQLException
tableName
- is a String
value of the table name to checkcreateTableQuery
- is a String
with the query to create tabletrue
boolean
value if the table exist in
the database and false
if the table was not found.SQLException
- if there was a problem accessing database.Statement createStatement(tigase.xmpp.BareJID user_id) throws SQLException
A
- user id for which the statement has to be created. This is an optional
parameter and null can be provided. It is used mainly to group queries for the
same user on the same DB connection.Statement
SQLException
- if a JDBC error occurs.PreparedStatement getPreparedStatement(tigase.xmpp.BareJID user_id, String stIdKey) throws SQLException
A
- user id for which the statement has to be created. This is an optional
parameter and null can be provided. It is used mainly to group queries for the
same user on the same DB connection.stIdKey
- is a statement identification key.PreparedStatement
for the given id key or null if
such a statement does not exist.SQLException
String getResourceUri()
String
value representing database connection
string.void initPreparedStatement(String stIdKey, String query) throws SQLException
getPreparedStatement(stIdKey)
method.stIdKey
- is a statement identification key.query
- is a query for the prepared statement.SQLException
void initRepository(String resource_uri, Map<String,String> params) throws SQLException
resource_uri
parameter as the database connection string or
via params
map if the required repository parameters are more
complex or both.resource_uri
- value in most cases representing the database connection string.params
- is a Map
with repository properties necessary to
initialize and perform all the functions. The initialization
parameters are implementation dependent.SQLException
- if there was an error during repository initialization. Some
implementations, though, perform so called lazy initialization so
even though there is a problem with the underlying repository it
may not be signaled through this method call.void release(Statement stmt, ResultSet rs)
stmt
- a Statement
variable to release resources for. Might
be null.rs
- a ResultSet
variable to release resources for. Might
be null.DataRepository takeRepoHandle(tigase.xmpp.BareJID user_id)
DataRepository
instance. If this is a repository pool
then it returns particular instance from the pool. It this is a real
repository instance it returns itself. This is exclusive take, no other
thread may use this handle until it is returned to the pool.user_id
- is user account ID for which we acquire the handle.void releaseRepoHandle(DataRepository repo)
void startTransaction() throws SQLException
SQLException
void commit() throws SQLException
SQLException
void rollback() throws SQLException
SQLException
void endTransaction() throws SQLException
SQLException
Copyright © 2013 Tigase. All rights reserved.