Package de.willuhn.jameica.hbci.server

# Class HBCIDBServiceImpl

java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
de.willuhn.datasource.db.DBServiceImpl
de.willuhn.jameica.hbci.server.HBCIDBServiceImpl

All Implemented Interfaces:
  `de.willuhn.datasource.rmi.DBService`, `de.willuhn.datasource.Service`, `HBCIDBService`, `Serializable`, `Remote`

public class HBCIDBServiceImpl extends de.willuhn.datasource.db.DBServiceImpl implements HBCIDBService
Implementierung des Datenbank-Service.

See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class java.rmi.server.RemoteObject

`ref`

### Fields inherited from interface de.willuhn.jameica.hbci.rmi.HBCIDBService

`SETTINGS`

## Constructor Summary

Constructors
Constructor
Description
`HBCIDBServiceImpl()`
`HBCIDBServiceImpl(String driverClass)`
Konstruktor mit expliziter Angabe des Treibers.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`checkConnection(Connection conn)`
`void`
`checkConsistency()`
Checkt die Konsistenz der Datenbank und fuehrt bei Bedarf Updates durch.
`<T extends de.willuhn.datasource.rmi.DBObject>
de.willuhn.datasource.rmi.DBIterator<T>`
`createList(Class<? extends de.willuhn.datasource.rmi.DBObject> arg0)`
`<T extends de.willuhn.datasource.rmi.DBObject>
T`
`createObject(Class<? extends de.willuhn.datasource.rmi.DBObject> arg0, String arg1)`
`Object`
`execute(String arg0, Object[] arg1, de.willuhn.datasource.rmi.ResultSetExtractor arg2)`
`int`
`executeUpdate(String query, String... params)`
Fuehrt ein Update/Delete-Statement durch.
`protected boolean`
`getAutoCommit()`
`protected Connection`
`getConnection()`
`DBSupport`
`getDriver()`
Liefert den verwendeten Treiber.
`protected boolean`
`getInsertWithID()`
`protected String`
`getJdbcDriver()`
`protected String`
`getJdbcPassword()`
`protected String`
`getJdbcUrl()`
`protected String`
`getJdbcUsername()`
`String`
`getName()`
`String`
`getSQLTimestamp(String content)`
Liefert den Namen der SQL-Funktion, mit der die Datenbank aus einem DATE-Feld einen UNIX-Timestamp macht.
`protected int`
`getTransactionIsolationLevel()`
`void`
`install()`
Initialisiert/erzeugt die Datenbank.

### Methods inherited from class de.willuhn.datasource.db.DBServiceImpl

`isStartable, isStarted, setClassFinder, setClassloader, start, stop`

### Methods inherited from class java.rmi.server.UnicastRemoteObject

`clone, exportObject, exportObject, exportObject, exportObject, exportObject, unexportObject`

### Methods inherited from class java.rmi.server.RemoteServer

`getClientHost, getLog, setLog`

### Methods inherited from class java.rmi.server.RemoteObject

`equals, getRef, hashCode, toString, toStub`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface de.willuhn.datasource.Service

`isStartable, isStarted, start, stop`

## Constructor Details

### HBCIDBServiceImpl

public HBCIDBServiceImpl() throws RemoteException

Throws:
  `RemoteException`

### HBCIDBServiceImpl

public HBCIDBServiceImpl(String driverClass) throws RemoteException
Konstruktor mit expliziter Angabe des Treibers.

Parameters:
  `driverClass` - der zu verwendende Treiber.
Throws:
  `RemoteException`

## Method Details

### getName

public String getName() throws RemoteException

Specified by:
  `getName` in interface `de.willuhn.datasource.Service`
Overrides:
  `getName` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `Service.getName()`

### getAutoCommit

protected boolean getAutoCommit() throws RemoteException

Overrides:
  `getAutoCommit` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getAutoCommit()`

### getJdbcDriver

protected String getJdbcDriver() throws RemoteException

Overrides:
  `getJdbcDriver` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getJdbcDriver()`

### getJdbcPassword

protected String getJdbcPassword() throws RemoteException

Overrides:
  `getJdbcPassword` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getJdbcPassword()`

### getJdbcUrl

protected String getJdbcUrl() throws RemoteException

Overrides:
  `getJdbcUrl` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getJdbcUrl()`

### getJdbcUsername

protected String getJdbcUsername() throws RemoteException

Overrides:
  `getJdbcUsername` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getJdbcUsername()`

### checkConsistency

public void checkConsistency() throws RemoteException, de.willuhn.util.ApplicationException
Description copied from interface: `HBCIDBService`
Checkt die Konsistenz der Datenbank und fuehrt bei Bedarf Updates durch.

Specified by:
  `checkConsistency` in interface `HBCIDBService`
Throws:
  `RemoteException` - Wenn es beim Pruefen der Datenbank-Konsistenz zu einem Fehler kam.
  `de.willuhn.util.ApplicationException` - wenn die Datenbank-Konsistenz nicht gewaehrleistet ist.
See Also:
  - `HBCIDBService.checkConsistency()`

### getConnection

protected Connection getConnection() throws RemoteException

Overrides:
  `getConnection` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getConnection()`

### executeUpdate

public int executeUpdate(String query, String... params) throws RemoteException
Description copied from interface: `HBCIDBService`
Fuehrt ein Update/Delete-Statement durch.

Specified by:
  `executeUpdate` in interface `HBCIDBService`
Parameters:
  `query` - das Query.
  `params` - die Parameter.
Returns:
  die Anzahl der betroffenen Datensaetze.
Throws:
  `RemoteException`
See Also:
  - `HBCIDBService.executeUpdate(java.lang.String, java.lang.String[])`

### createList

public <T extends de.willuhn.datasource.rmi.DBObject> de.willuhn.datasource.rmi.DBIterator<T> createList(Class<? extends de.willuhn.datasource.rmi.DBObject> arg0) throws RemoteException

Specified by:
  `createList` in interface `de.willuhn.datasource.rmi.DBService`
Overrides:
  `createList` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.createList(java.lang.Class)`

### createObject

public <T extends de.willuhn.datasource.rmi.DBObject> T createObject(Class<? extends de.willuhn.datasource.rmi.DBObject> arg0, String arg1) throws RemoteException

Specified by:
  `createObject` in interface `de.willuhn.datasource.rmi.DBService`
Overrides:
  `createObject` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.createObject(java.lang.Class, java.lang.String)`

### execute

public Object execute(String arg0, Object[] arg1, de.willuhn.datasource.rmi.ResultSetExtractor arg2) throws RemoteException

Specified by:
  `execute` in interface `de.willuhn.datasource.rmi.DBService`
Overrides:
  `execute` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.execute(java.lang.String, java.lang.Object[], de.willuhn.datasource.rmi.ResultSetExtractor)`

### install

public void install() throws RemoteException
Description copied from interface: `HBCIDBService`
Initialisiert/erzeugt die Datenbank.

Specified by:
  `install` in interface `HBCIDBService`
Throws:
  `RemoteException` - Wenn beim Initialisieren ein Fehler auftrat.
See Also:
  - `HBCIDBService.install()`

### getSQLTimestamp

public String getSQLTimestamp(String content) throws RemoteException
Description copied from interface: `HBCIDBService`
Liefert den Namen der SQL-Funktion, mit der die Datenbank aus einem DATE-Feld einen UNIX-Timestamp macht. Bei MySQL ist das z.Bsp. "UNIX_TIMESTAMP".

Specified by:
  `getSQLTimestamp` in interface `HBCIDBService`
Parameters:
  `content` - der Feld-Name.
Returns:
  Name der SQL-Funktion samt Parameter. Also zum Beispiel "TONUMBER(datum)".
Throws:
  `RemoteException`
See Also:
  - `HBCIDBService.getSQLTimestamp(java.lang.String)`

### getInsertWithID

protected boolean getInsertWithID() throws RemoteException

Overrides:
  `getInsertWithID` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getInsertWithID()`

### checkConnection

protected void checkConnection(Connection conn) throws SQLException

Overrides:
  `checkConnection` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `SQLException`
See Also:
  - `DBServiceImpl.checkConnection(java.sql.Connection)`

### getTransactionIsolationLevel

protected int getTransactionIsolationLevel() throws RemoteException

Overrides:
  `getTransactionIsolationLevel` in class `de.willuhn.datasource.db.DBServiceImpl`
Throws:
  `RemoteException`
See Also:
  - `DBServiceImpl.getTransactionIsolationLevel()`

### getDriver

public DBSupport getDriver() throws RemoteException
Description copied from interface: `HBCIDBService`
Liefert den verwendeten Treiber.

Specified by:
  `getDriver` in interface `HBCIDBService`
Returns:
  der Treiber.
Throws:
  `RemoteException`
See Also:
  - `HBCIDBService.getDriver()`