ABLE 2.3.0 07/13/2005 14:21:00

com.ibm.able.platform
Interface RmiPlatformPersistenceService

All Superinterfaces:
java.rmi.Remote, RmiAblePlatformService, RmiAblePlatformServiceEventGenerator
All Known Implementing Classes:
RmiPlatformPersistenceSystem

public interface RmiPlatformPersistenceService
extends java.rmi.Remote, RmiAblePlatformService

Defines the behavior of an RMI Platform Persistence Service.


Method Summary
 void close(java.lang.String databaseName, java.lang.String tableName, AbleSecureKey key)
          Closes all connections, both the AbleDBImport and AbleDBExport beans for this database table.
 void createTableConnection(java.lang.String databaseName, java.lang.String tableName, java.lang.String schemaName, java.lang.String[] columnNames, java.lang.String[] columnTypes, AbleSecureKey key, boolean writeOnly)
          This creates an AbleDBExport and optionally an AbleDBImport bean and the table these beans will be dealing with if the table does not already exist.
 void delete(java.lang.String databaseName, java.lang.String tableName, java.lang.Object whereObject, AbleSecureKey key)
          Deletes rows from a table.
 void insert(java.lang.String databaseName, java.lang.String tableName, java.io.Serializable[] insertData, AbleSecureKey key)
          Insert a record into a table.
 java.lang.Object[] select(java.lang.String databaseName, java.lang.String tableName, java.lang.String columnString, java.lang.String whereString, AbleSecureKey key)
          Selects data from a table.
 void update(java.lang.String databaseName, java.lang.String tableName, java.util.Map updateMap, java.util.Map whereMap, AbleSecureKey key)
          Updates a row in a table.
 
Methods inherited from interface com.ibm.able.platform.RmiAblePlatformService
getState, terminateService
 
Methods inherited from interface com.ibm.able.platform.RmiAblePlatformServiceEventGenerator
addAblePlatformServiceEventListener, getAblePlatformServiceEventListeners, removeAblePlatformServiceEventListener
 

Method Detail

createTableConnection

public void createTableConnection(java.lang.String databaseName,
                                  java.lang.String tableName,
                                  java.lang.String schemaName,
                                  java.lang.String[] columnNames,
                                  java.lang.String[] columnTypes,
                                  AbleSecureKey key,
                                  boolean writeOnly)
                           throws java.rmi.RemoteException,
                                  PlatformPersistenceException
This creates an AbleDBExport and optionally an AbleDBImport bean and the table these beans will be dealing with if the table does not already exist. The Export bean will be used in the future to alter the table in any way, and the Import bean will be used to read info from the table.

Parameters:
databaseName - The name of the Database that the table will exist in.

tableName - The name of the table.

schemaName - The schema for this table.

columnNames - String[] containing the name of each column for this table.

columnTypes - String[] containing the type of each column for this table.

key - AbleSecureKey used to secure communication.

writeOnly - When true, the service is output only.

Throws:
AbleException - On all errors creating and initializing the AbleDBExport or AbleDBImport beans.

PlatformPersistenceException -

If unable to verify the key when the platform is secure.

If databaseName is null.

If tableName is null.

If columnNames is null.

If columnTypes is null.

If columnTypes and columnNames are of different lengths.

On errors creating the table.

java.rmi.RemoteException - On all remote errors.

insert

public void insert(java.lang.String databaseName,
                   java.lang.String tableName,
                   java.io.Serializable[] insertData,
                   AbleSecureKey key)
            throws java.rmi.RemoteException,
                   PlatformPersistenceException
Insert a record into a table.

Parameters:
databaseName - The name of the Database that the table will exist in.

tableName - The name of the table to insert into.

insertData - Serializable[] containing the data that is to be inserted into the table.

key - AbleSecureKey used to secure communication.

Throws:
PlatformPersistenceException -

If the insertData is null.

If unable to verify the key when the platform is secure.

If secure and the caller is not the one who originally set up the connection to this table.

If the table connection does not exist.

java.rmi.RemoteException - On all remote errors.

update

public void update(java.lang.String databaseName,
                   java.lang.String tableName,
                   java.util.Map updateMap,
                   java.util.Map whereMap,
                   AbleSecureKey key)
            throws java.rmi.RemoteException,
                   PlatformPersistenceException
Updates a row in a table.

Parameters:
databaseName - The name of the Database that the table will exist in.

tableName - The name of the table.

updateMap - This is the new data for the record that is to be updated. In this map the keys are the column names and the values are the column values. The columns that are not changing do not have to be present.

whereMap - This determines the where clause for the update statement. This Map will be used to build the where clause. The keys will be the column names, and the values will be the Object to match to for their respective column. If left null, or empty, everything will be deleted.

key - AbleSecureKey used to secure communication

Throws:
PlatformPersistenceException -

If the updateMap is null.

If unable to verify the key when the platform is secure.

If secure and the caller is not the one who originally set up the connection to this table.

If the table connection does not exist.

java.rmi.RemoteException - On all remote errors.

delete

public void delete(java.lang.String databaseName,
                   java.lang.String tableName,
                   java.lang.Object whereObject,
                   AbleSecureKey key)
            throws java.rmi.RemoteException,
                   PlatformPersistenceException
Deletes rows from a table.

Parameters:
databaseName - The name of the database that the table will exist in.

tableName - The name of the table.

whereObject - This can either be a simple String that states the where clause of the delete, or a Map that will be used to build the where clause. The keys will be the column names, and the values will be the Object to match to for their respective column. If left null, or not a String or Map, everything will be deleted.

key - AbleSecureKey used to secure communication

Throws:
PlatformPersistenceException -

If unable to verify the key when the platform is secure.

If secure and the caller is not the one who originally set up the connection to this table.

If the table connection does not exist.

java.rmi.RemoteException - On all remote errors.

select

public java.lang.Object[] select(java.lang.String databaseName,
                                 java.lang.String tableName,
                                 java.lang.String columnString,
                                 java.lang.String whereString,
                                 AbleSecureKey key)
                          throws java.rmi.RemoteException,
                                 PlatformPersistenceException
Selects data from a table.

Parameters:
databaseName - The name of the database that the table will exist in.

tableName - The name of the table.

columnString - The columns that are to be returned in a select statement. If left blank or null, all columns will be returned.

whereString - The where string of the select statement. If left blank or null, everything will be returned.

key - AbleSecureKey used to secure communication.

Returns:
An Object[] of Serializable[]s, each containing a returned row from the select statement.

Throws:
AbleException - On AbleDBImport bean errors opening or processing the select query.

PlatformPersistenceException -

If unable to verify the key when the platform is secure.

If secure and the caller is not the one who originally set up the connection to this table.

If the table connection does not exist.

On errors deserializing a Blob.

If the persisted data selected is not of a valid type.

java.rmi.RemoteException - On all remote errors.

close

public void close(java.lang.String databaseName,
                  java.lang.String tableName,
                  AbleSecureKey key)
           throws java.rmi.RemoteException,
                  PlatformPersistenceException
Closes all connections, both the AbleDBImport and AbleDBExport beans for this database table.

Parameters:
databaseName - The name of the DB that the table will exist in.

tableName - The name of the table.

key - AbleSecureKey used to secure communication.

Throws:
AbleException - On any errors calling quitAll on the AbleDBImport or AbleDBExport beans.

PlatformPersistenceException -

If unable to verify the key when the platform is secure.

If secure and the caller is not the one who originally set up the connection to this table.

If the table connection does not exist.

java.rmi.RemoteException - On all remote errors.

ABLE 2.3.0 07/13/2005 14:21:00

(C) Copyright IBM Corporation 1999, 2005