org.kapott.hbci.manager
Class HBCIUtils

java.lang.Object
  extended byorg.kapott.hbci.manager.HBCIUtils

public final class HBCIUtils
extends java.lang.Object

Hilfsklasse für diverse Tools. Diese Klasse definiert nur statische Methoden und Konstanten. Sie kann nicht instanziiert werden.

Die wichtigsten Methoden dieser Klasse sind die Methoden zum Initialisieren des HBCI-Kernel (init(Properties,org.kapott.hbci.callback.HBCICallback)) sowie zum Setzen von HBCI-Kernel-Parametern (setParam(String,String)).

Kernel-Parameter können zu jedem beliebigen Zeitpunkt der Laufzeit einer Anwendung gesetzt werden. Das Setzen eines Kernel-Parameters geschieht mit der Methode setParam(). Dieser Methode werden der Name eines Kernel-Parameters sowie der neue Wert für diesen Parameter übergeben. Alternativ bzw. in Verbindung mit dieser Variante können diese Parameter in einer Datei abgelegt werden, die beim Initialiseren des HBCI-Kernels eingelesen wird (via Properties.load()). Folgende Kernel-Parameter werden zur Zeit von verschiedenen Subsystemen des HBCI-Kernels ausgewertet:


Field Summary
static int LOG_DEBUG
          Loglevel für Debug-Ausgaben
static int LOG_DEBUG2
          Loglevel für Debug-Ausgaben für extreme-Debugging
static int LOG_ERR
          Loglevel für Fehlerausgaben
static int LOG_INFO
          Loglevel für Informationen
static int LOG_INTERN
          Loglevel für devel-Debugging - nicht benutzen!
static int LOG_NONE
           
static int LOG_WARN
          Loglevel für Warnungen
 
Method Summary
static boolean canCheckAccountCRC(java.lang.String blz)
          Ermittelt, ob die Kontonummern für eine bestimmte BLZ mit HBCI4Java überprüft werden können oder nicht.
static boolean checkAccountCRC(java.lang.String blz, java.lang.String number)
          Überprüft, ob gegebene BLZ und Kontonummer zueinander passen.
static boolean checkAccountCRCByAlg(java.lang.String alg, java.lang.String number)
          Deprecated.  
static boolean checkAccountCRCByAlg(java.lang.String alg, java.lang.String blz, java.lang.String number)
          Überprüfen einer Kontonummer mit einem gegebenen CRC-Algorithmus.
static boolean checkIBANCRC(java.lang.String iban)
          Überprüfen der Gültigkeit einer IBAN.
static java.lang.String data2hex(byte[] data)
          Wandelt ein Byte-Array in eine entsprechende hex-Darstellung um.
static java.lang.String date2String(java.util.Date date)
          Deprecated.  
static java.lang.String date2StringISO(java.util.Date date)
          Erzeugt einen String im Format YYYY-MM-DD
static java.lang.String date2StringLocal(java.util.Date date)
          Wandelt ein gegebenes Datumsobjekt in einen String um.
static java.lang.String datetime2String(java.util.Date date)
          Deprecated.  
static java.lang.String datetime2StringISO(java.util.Date date)
          Erzeugt einen String im Format YYYY-MM-DD HH:MM:SS
static java.lang.String datetime2StringLocal(java.util.Date date)
          Wandelt ein gegebenes Datums-Objekt in einen String um, der sowohl Datum als auch Uhrzeit enthält.
static byte[] decodeBase64(java.lang.String st)
          Dekodieren eines Base64-Datenstroms.
static void done()
          Bereinigen aller HBCI4Java-Datenstrukturen.
static void doneThread()
          Aufräumen der Datenstrukturen für aktuelle ThreadGroup.
static java.lang.String encodeBase64(byte[] x)
          Gibt Daten Base64-encoded zurück.
static java.lang.String exception2String(java.lang.Exception e)
          Gibt den StackTrace einer Exception zurück.
static java.lang.String exception2StringShort(java.lang.Exception e)
          Extrahieren der root-Exception aus einer Exception-Chain.
static java.lang.String getBICForBLZ(java.lang.String blz)
          Gibt zu einer gegebenen Bankleitzahl den BIC-Code zurück.
static java.lang.String getHBCIHostForBLZ(java.lang.String blz)
          Gibt zu einer gegebenen Bankleitzahl den HBCI-Host (für RDH und DDV) zurück.
static java.lang.String getHBCIVersionForBLZ(java.lang.String blz)
          Gibt zu einer gegebenen Bankleitzahl zurück, welche HBCI-Version für DDV bzw.
static java.util.Locale getLocale()
          Gibt die Locale zurück, die von HBCI4Java innerhalb der aktuellen ThreadGroup verwendet wird.
static java.lang.String getNameForBLZ(java.lang.String blz)
          Ermittelt zu einer gegebenen Bankleitzahl den Namen des Institutes.
static java.lang.String getParam(java.lang.String st)
          Gibt den aktuellen Wert eines bestimmten HBCI-Parameters zurück.
static java.lang.String getParam(java.lang.String st, java.lang.String def)
          Gibt den aktuellen Wert eines bestimmten HBCI-Parameters zurück.
static java.util.Properties getParams()
          Gibt eine Map aller in der aktuellen ThreadGroup gesetzten Kernel-Parameter zurück.
static java.lang.String getPinTanURLForBLZ(java.lang.String blz)
          Gibt zu einer gegebenen Bankleitzahl die PIN/TAN-URL zurück.
static java.lang.String getPinTanVersionForBLZ(java.lang.String blz)
          Gibt zu einer gegebenen Bankleitzahl zurück, welche HBCI-Version für HBCI-PIN/TAN bzw.
static void init(java.lang.ClassLoader cl, java.lang.String configfile, HBCICallback callback)
          Deprecated.  
static void init(java.util.Properties props, HBCICallback callback)
           Initialisieren der HBCI4Java-Umgebung.
static void initLocale()
          Aktualisieren der von HBCI4Java verwendeten Locale innerhalb der aktuellen ThreadGroup.
static void initThread(java.lang.ClassLoader cl, java.lang.String configfile)
          Deprecated.  
static void initThread(java.lang.ClassLoader cl, java.lang.String configfile, HBCICallback callback)
          Deprecated. use initThread(Properties, HBCICallback) instead
static void initThread(java.util.Properties props, HBCICallback callback)
          Initialisieren der HBCI4Java-Umgebung für eine neue ThreadGroup.
static java.util.Properties loadPropertiesFile(java.lang.ClassLoader cl, java.lang.String configfile)
          Lädt ein Properties-File, welches über ClassLoader.getRessourceAsStream() gefunden wird.
static void log(java.lang.Exception e)
          Ausgabe der Meldungen einer Exception-Kette mit dem Level LOG_ERR.
static void log(java.lang.Exception e, int level)
          Ausgabe der Meldungen einer Exception-Kette über den Log-Mechanismus des HBCI-Kernels.
static void log(java.lang.String st, int level)
          Ausgabe eines Log-Strings über den Log-Mechanismus des HBCI-Kernels.
static GVRKUms parseMT940(java.lang.String mt940)
          Parsen eines MT940-Datenstroms (Kontoauszüge).
static void refreshBLZList(java.io.InputStream in)
          Aktivieren einer neuen Bankenliste.
static void setParam(java.lang.String key, java.lang.String value)
          Setzt den Wert eines HBCI-Parameters.
static java.util.Date string2Date(java.lang.String st)
          Deprecated.  
static java.util.Date string2DateISO(java.lang.String st)
          Wandelt einen String der Form YYYY-MM-DD in ein Date-Objekt um.
static java.util.Date string2DateLocal(java.lang.String date)
          Wandelt einen String, der ein Datum in der lokalen Darstellung enthält (abhängig von der HBCI4Java-Locale, siehe Kernel-Parameter kernel.locale.
static java.util.Date string2Time(java.lang.String st)
          Deprecated.  
static java.util.Date string2TimeISO(java.lang.String st)
          Wandelt einen String der Form HH:MM:SS in ein Date-Objekt um
static java.util.Date string2TimeLocal(java.lang.String date)
          Wandelt einen String, der eine Uhrzeit in der lokalen Darstellung enthält (abhängig von der HBCI4Java-Locale, siehe Kernel-Parameter kernel.locale.
static double string2Value(java.lang.String st)
          Konvertiert einen String in einen double-Wert (entspricht Double.parseDouble(st)).
static java.util.Date strings2DateTime(java.lang.String date, java.lang.String time)
          Deprecated.  
static java.util.Date strings2DateTimeISO(java.lang.String date, java.lang.String time)
          Erzeugt ein Datums-Objekt aus Datum und Uhrzeit in der String-Darstellung.
static java.util.Date strings2DateTimeLocal(java.lang.String date, java.lang.String time)
          Erzeugt ein Datums-Objekt aus Datum und Uhrzeit in der String-Darstellung.
static java.lang.String time2String(java.util.Date date)
          Deprecated.  
static java.lang.String time2StringISO(java.util.Date date)
          Erzeugt einen String der Form HH:MM:SS
static java.lang.String time2StringLocal(java.util.Date date)
          Wandelt ein gegebenes Datums-Objekt in einen String um, der die Uhrzeit enthält.
static java.lang.String value2String(double value)
          Wandelt einen Double-Wert in einen String im Format "1234.56" um (also ohne Tausender-Trennzeichen und mit "." als Dezimaltrennzeichen).
static java.lang.String version()
          Gibt die Versionsnummer der HBCI4Java-Bibliothek zurück.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG_NONE

public static final int LOG_NONE
See Also:
Constant Field Values

LOG_ERR

public static final int LOG_ERR
Loglevel für Fehlerausgaben

See Also:
Constant Field Values

LOG_WARN

public static final int LOG_WARN
Loglevel für Warnungen

See Also:
Constant Field Values

LOG_INFO

public static final int LOG_INFO
Loglevel für Informationen

See Also:
Constant Field Values

LOG_DEBUG

public static final int LOG_DEBUG
Loglevel für Debug-Ausgaben

See Also:
Constant Field Values

LOG_DEBUG2

public static final int LOG_DEBUG2
Loglevel für Debug-Ausgaben für extreme-Debugging

See Also:
Constant Field Values

LOG_INTERN

public static final int LOG_INTERN
Loglevel für devel-Debugging - nicht benutzen!

See Also:
Constant Field Values
Method Detail

loadPropertiesFile

public static java.util.Properties loadPropertiesFile(java.lang.ClassLoader cl,
                                                      java.lang.String configfile)
Lädt ein Properties-File, welches über ClassLoader.getRessourceAsStream() gefunden wird. Der Name des Property-Files wird durch den Parameter configfile bestimmt. Wie dieser Name interpretiert wird, um das Property-File tatsächlich zu finden, hängt von dem zum Laden benutzten ClassLoader ab. Im Parameter cl kann dazu eine ClassLoader-Instanz übergeben werden, deren getRessource-Methode benutzt wird, um das Property-File zu lokalisieren und zu laden. Wird kein ClassLoader angegeben (cl==null), so wird zum Laden des Property-Files der ClassLoader benutzt, der auch zum Laden der aufrufenden Klasse benutzt wurde.

Parameters:
cl - ClassLoader, der zum Laden des Property-Files verwendet werden soll
configfile - Name des zu ladenden Property-Files (kann null sein - in dem Fall gibt diese Methode auch null zurück).
Returns:
Properties-Objekt

init

public static void init(java.util.Properties props,
                        HBCICallback callback)

Initialisieren der HBCI4Java-Umgebung. Diese Methode muss vor allen anderen HBCI-Methoden aufgerufen werden. Hiermit wird die HBCI4Java-Laufzeitumgebung initialisiert. Dazu gehören das Laden verschiedener Dateien aus dem HBCI4Java-Classpath (Dateien für die Lokalisierung von Nachrichten, Verzeichnis der Banken usw.) sowie das Initialisieren einiger interner Datenstrukturen.

Zusätzlich wird in dieser Methode die Methode initThread(Properties,HBCICallback) aufgerufen, um alle Datenstrukturen, die ThreadGroup-weise verwaltet werden, für die aktuelle ThreadGroup zu initialisieren. Siehe dazu auch die Dokumentation zu initThread(Properties,HBCICallback) sowie die Datei README.MultiThread.

Parameters:
props - Properties-Objekt mit Initialisierungs-Werten für die Kernel-Parameter. Darf null sein.
callback - das zu verwendende Callback-Objekt. Beim Aufruf dieser Methode darf callback niemals null sein (im Gegensatz zum Aufruf von initThread, um weitere ThreadGroups zu initialisieren).

init

public static void init(java.lang.ClassLoader cl,
                        java.lang.String configfile,
                        HBCICallback callback)
Deprecated.  

Wrapper für init(Properties,HBCICallback). Siehe auch initThread(ClassLoader, String, HBCICallback).

Parameters:
cl - der ClassLoader, der zum Laden von configfile verwendet werden soll.
configfile - der Name des zu ladenden Property-Files.
callback - das zu verwendende Callback-Objekt. Beim Aufruf dieser Methode darf callback niemals null sein (im Gegensatz zum Aufruf von initThread, um weitere ThreadGroups zu initialisieren).

initThread

public static void initThread(java.lang.ClassLoader cl,
                              java.lang.String configfile)
Deprecated.  

Entspricht initThread(cl,configfile,null)


initThread

public static void initThread(java.util.Properties props,
                              HBCICallback callback)
Initialisieren der HBCI4Java-Umgebung für eine neue ThreadGroup. Soll HBCI4Java in einer multi-threaded Anwendung verwendet werden, bei der mehrere Threads gleichzeitig HBCI4Java benutzen, so muss für jeden solchen Thread eine separate ThreadGroup angelegt werden. Jede dieser ThreadGroups muss mit dieser Methode für die Benutzung von HBCI4Java initialisiert werden. Alle HBCI-Kernel-Parameter sowie die HBCI-Callbacks werden für jede ThreadGroup separat verwaltet, so dass jede ThreadGroup also einen eigenen Satz dieser Daten benutzt.

Der Thread, in dem die Methode HBCIUtils.init() aufgerufen wird, muss nicht zusätzlich mit initThread() initialisiert werden, das wird automatisch von der Methode init() übernommen.

Siehe dazu auch die Datei README.MultiThreading in den HBCI4Java-Archiven.

Ist der Parameter props ungleich null, so werden die Kernel-Parameter für die aktuelle ThreadGroup mit den darin angegebenen Werten initialisiert.

Außerdem wird mit dieser Methode ein Callback-Objekt registriert, welches von HBCI4Java für die Kommunikation mit der Anwendung verwendet wird.

Parameters:
props - Property-Objekt mit initialisierungs-Werten für die Kernel-Parameter. Darf auch null sein.
callback - ein Objekt einer HBCICallback-Klasse, das benutzt wird, um Anfragen des Kernels (benötigte Daten, benötige Chipkarte, wichtige Informationen während der Dialog-Ausführung etc.) an die Anwendung weiterzuleiten. Siehe dazu HBCICallback. Jede ThreadGroup kann ein eigenes Callback-Objekt registrieren, welches dann für alle HBCI-Prozesse innerhalb dieser ThreadGroup verwendet wird. Wird beim Initialisieren einer ThreadGroup kein callback-Objekt angegeben (callback==null), dann wird für diese ThreadGroup das Callback-Objekt der "Eltern-ThreadGroup" verwendet. Die "initiale" ThreadGroup, die mit init(Properties,HBCICallback) initialisiert wird, muss ein callback!=null spezifizieren.

initThread

public static void initThread(java.lang.ClassLoader cl,
                              java.lang.String configfile,
                              HBCICallback callback)
Deprecated. use initThread(Properties, HBCICallback) instead

Wrapper für initThread(Properties,HBCICallback).

Ist der Parameter configfile ungleich null, so wird versucht, ein Property-File mit default-Einstellungen für die HBCI-Kernel-Parameter für die aktuelle ThreadGroup zu laden. Der Name des Property-Files wird durch den Parameter configfile bestimmt. Wie dieser Name interpretiert wird, um das Property-File tatsächlich zu finden, hängt von dem zum Laden benutzten ClassLoader ab. Im Parameter cl kann dazu eine ClassLoader-Instanz übergeben werden, deren getRessource-Methode benutzt wird, um das Property-File zu lokalisieren und zu laden. Wird kein ClassLoader angegeben (cl==null), so wird zum Laden des Property-Files der ClassLoader benutzt, der auch zum Laden der aufrufenden Klasse benutzt wurde.

Achtung: Dieser Default-ClassLoader ist in den meisten Fällen ein ClassLoader, der in einem JAR-File bzw. im aktuellen CLASSPATH nach Ressourcen sucht. Soll ein Property-File von einer bestimmten Stelle im Filesystem geladen werden, so sollte hier statt dessen der ClassLoader FileSystemClassLoader benutzt werden. In diesem Fall wird der angegebene Dateiname als relativer Pfad von der Wurzel des Dateisystems aus interpretiert. Eine Demonstration befindet sich im Tool AnalyzeReportOfTransactions.

Parameters:
cl - der ClassLoader, der verwendet werden soll, um das Property-File configfile zu laden (mit der Methode ClassLoader.getRessource()). Ist dieser Parameter null, so wird der ClassLoader verwendet, der auch zum Laden der Klasse benutzt wurde, die die aufrufende Methode enthält.
configfile - der Name des zu ladenden Property-Files. Ist dieser Parameter null, kein Property-File geladen.

doneThread

public static void doneThread()
Aufräumen der Datenstrukturen für aktuelle ThreadGroup. Alle ThreadGroups, die via initThread(Properties,HBCICallback) initialisiert wurden, sollten kurz vor deren Ende mit dieser Methode wieder "aufgeräumt" werden, damit HBCI4Java die entsprechenden Datenstrukturen für diese ThreadGroup wieder freigeben kann.


done

public static void done()
Bereinigen aller HBCI4Java-Datenstrukturen. Nach Aufruf dieser Methode kann keine andere HBCI4Java-Funktion mehr benutzt werden. Durch erneuten Aufruf von init(Properties,HBCICallback) kann HBCI4Java wieder re-initialisiert werden.


initLocale

public static void initLocale()
Aktualisieren der von HBCI4Java verwendeten Locale innerhalb der aktuellen ThreadGroup. Wenn die Kernel-Parameter kernel.locale.* geändert wurden, muss anschließend diese Methode aufgerufen werden, damit die Werte für diese Kernel-Parameter geprüft und die entsprechende Locale für die aktuelle ThreadGroup aktiviert wird. Beim Aufruf von init(Properties, HBCICallback) bzw. initThread(Properties, HBCICallback) wird diese Methode automatisch aufgerufen - ein manueller Aufruf ist also nur notwendig, wenn die Kernel-Parameter kernel.locale.* nach dem Initialisieren des aktuellen Threads geändert werden.


getLocale

public static java.util.Locale getLocale()
Gibt die Locale zurück, die von HBCI4Java innerhalb der aktuellen ThreadGroup verwendet wird. Siehe auch Kernel-Parameter kernel.locale.* sowie initLocale().


getParam

public static java.lang.String getParam(java.lang.String st,
                                        java.lang.String def)
Gibt den aktuellen Wert eines bestimmten HBCI-Parameters zurück. Für jede ThreadGroup wird ein separater Satz von HBCI-Parametern verwaltet.

Parameters:
st - Name des HBCI-Parameters
def - default-Wert, falls dieser Parameter nicht definiert ist
Returns:
den Wert des angegebenen HBCI-Parameters

getParams

public static java.util.Properties getParams()
Gibt eine Map aller in der aktuellen ThreadGroup gesetzten Kernel-Parameter zurück.


getParam

public static java.lang.String getParam(java.lang.String st)
Gibt den aktuellen Wert eines bestimmten HBCI-Parameters zurück. Für jede ThreadGroup wird ein separater Satz von HBCI-Parametern verwaltet.

Parameters:
st - Name des HBCI-Parameters
Returns:
den Wert des angegebenen HBCI-Parameters

getNameForBLZ

public static java.lang.String getNameForBLZ(java.lang.String blz)
Ermittelt zu einer gegebenen Bankleitzahl den Namen des Institutes.

Parameters:
blz - die Bankleitzahl
Returns:
den Namen des dazugehörigen Kreditinstitutes. Falls die Bankleitzahl unbekannt ist, so wird ein leerer String zurückgegeben

getBICForBLZ

public static java.lang.String getBICForBLZ(java.lang.String blz)
Gibt zu einer gegebenen Bankleitzahl den BIC-Code zurück.

Parameters:
blz - Bankleitzahl der Bank
Returns:
BIC-Code dieser Bank. Falls kein BIC-Code bekannt ist, wird ein leerer String zurückgegeben.

getHBCIHostForBLZ

public static java.lang.String getHBCIHostForBLZ(java.lang.String blz)
Gibt zu einer gegebenen Bankleitzahl den HBCI-Host (für RDH und DDV) zurück.

Parameters:
blz - Bankleitzahl der Bank
Returns:
HBCI-Host (DNS-Name oder IP-Adresse). Falls kein Host bekannt ist, wird ein leerer String zurückgegeben.

getPinTanURLForBLZ

public static java.lang.String getPinTanURLForBLZ(java.lang.String blz)
Gibt zu einer gegebenen Bankleitzahl die PIN/TAN-URL zurück.

Parameters:
blz - Bankleitzahl der Bank
Returns:
PIN/TAN-URL. Falls keine URL bekannt ist, wird ein leerer String zurückgegeben.

getHBCIVersionForBLZ

public static java.lang.String getHBCIVersionForBLZ(java.lang.String blz)
Gibt zu einer gegebenen Bankleitzahl zurück, welche HBCI-Version für DDV bzw. RDH zu verwenden ist. Siehe auch getPinTanVersionForBLZ(String).

Parameters:
blz -
Returns:
HBCI-Version

getPinTanVersionForBLZ

public static java.lang.String getPinTanVersionForBLZ(java.lang.String blz)
Gibt zu einer gegebenen Bankleitzahl zurück, welche HBCI-Version für HBCI-PIN/TAN bzw. RDH zu verwenden ist. Siehe auch getHBCIVersionForBLZ(String)

Parameters:
blz -
Returns:
HBCI-Version

setParam

public static void setParam(java.lang.String key,
                            java.lang.String value)
Setzt den Wert eines HBCI-Parameters. Eine Beschreibung aller vom Kernel ausgewerteten Parameter befindet sich in der Klassenbeschreibung zur dieser Klasse. Für jede ThreadGroup wird ein separater Satz von HBCI-Parametern verwaltet.

Parameters:
key - Name des HBCI-Parameters.
value - neuer Wert des zu setzenden HBCI-Parameters

log

public static void log(java.lang.String st,
                       int level)
Ausgabe eines Log-Strings über den Log-Mechanismus des HBCI-Kernels.

Parameters:
st - der auszugebende String
level - die "Wichtigkeit" dieser Meldung. mögliche Werte:
  • LOG_ERR
  • LOG_WARN
  • LOG_INFO
  • LOG_DEBUG
  • LOG_CHIPCARD (wird nur intern benutzt)

log

public static void log(java.lang.Exception e)
Ausgabe der Meldungen einer Exception-Kette mit dem Level LOG_ERR.

Parameters:
e - die Exception, deren getMessage()-Meldungen geloggt werden sollen

exception2String

public static java.lang.String exception2String(java.lang.Exception e)
Gibt den StackTrace einer Exception zurück.

Parameters:
e - Exception
Returns:
kompletter StackTrace als String

exception2StringShort

public static java.lang.String exception2StringShort(java.lang.Exception e)
Extrahieren der root-Exception aus einer Exception-Chain.

Parameters:
e - Exception
Returns:
String mit Infos zur root-Exception

log

public static void log(java.lang.Exception e,
                       int level)
Ausgabe der Meldungen einer Exception-Kette über den Log-Mechanismus des HBCI-Kernels. Es werden auch alle getCause()-Exceptions verfolgt und deren Meldung ausgegeben. Enthält keine der Exceptions dieser Kette eine Message, so wird statt dessen ein Stacktrace ausgegeben.

Parameters:
e - die Exception, deren getMessage()-Meldungen ausgegeben werden sollen.
level - der Log-Level, mit dem die Meldungen geloggt werden sollen. Siehe dazu auch log(String,int)

data2hex

public static java.lang.String data2hex(byte[] data)
Wandelt ein Byte-Array in eine entsprechende hex-Darstellung um.

Parameters:
data - das Byte-Array, für das eine Hex-Darstellung erzeugt werden soll
Returns:
einen String, der für jedes Byte aus data zwei Zeichen (0-9,A-F) enthält.

date2StringLocal

public static java.lang.String date2StringLocal(java.util.Date date)
Wandelt ein gegebenes Datumsobjekt in einen String um. Das Format des erzeugten Strings ist abhängig vom gesetzten HBCI4Java-Locale (siehe Kernel-Parameter kernel.locale.*)

Parameters:
date - ein Datum
Returns:
die lokalisierte Darstellung dieses Datums als String

string2DateLocal

public static java.util.Date string2DateLocal(java.lang.String date)
Wandelt einen String, der ein Datum in der lokalen Darstellung enthält (abhängig von der HBCI4Java-Locale, siehe Kernel-Parameter kernel.locale.*), in ein Datumsobjekt um

Parameters:
date - ein Datum in der lokalen Stringdarstellung
Returns:
ein entsprechendes Datumsobjekt

time2StringLocal

public static java.lang.String time2StringLocal(java.util.Date date)
Wandelt ein gegebenes Datums-Objekt in einen String um, der die Uhrzeit enthält. Das Format des erzeugten Strings ist abhängig von der gesetzten HBCI4Java-Locale (siehe Kernel-Parameter kernel.locale.*).

Parameters:
date - ein Datumsobjekt
Returns:
die lokalisierte Darstellung der Uhrzeit als String

string2TimeLocal

public static java.util.Date string2TimeLocal(java.lang.String date)
Wandelt einen String, der eine Uhrzeit in der lokalen Darstellung enthält (abhängig von der HBCI4Java-Locale, siehe Kernel-Parameter kernel.locale.*), in ein Datumsobjekt um

Parameters:
date - eine Uhrzeit in der lokalen Stringdarstellung
Returns:
ein entsprechendes Datumsobjekt

datetime2StringLocal

public static java.lang.String datetime2StringLocal(java.util.Date date)
Wandelt ein gegebenes Datums-Objekt in einen String um, der sowohl Datum als auch Uhrzeit enthält. Das Format des erzeugten Strings ist abhängig von der gesetzten HBCI4Java-Locale (siehe Kernel-Parameter kernel.locale.*).

Parameters:
date - ein Datumsobjekt
Returns:
die lokalisierte Darstellung des Datums-Objektes

strings2DateTimeLocal

public static java.util.Date strings2DateTimeLocal(java.lang.String date,
                                                   java.lang.String time)
Erzeugt ein Datums-Objekt aus Datum und Uhrzeit in der String-Darstellung. Die String-Darstellung von Datum und Uhrzeit müssen dabei der aktuellen HBCI4Java-Locale entsprechen (siehe Kernel-Parameter kernel.locale.*)).

Parameters:
date - ein Datum in der lokalen Stringdarstellung
time - eine Uhrzeit in der lokalen Stringdarstellung (darf null sein)
Returns:
ein entsprechendes Datumsobjekt

date2StringISO

public static java.lang.String date2StringISO(java.util.Date date)
Erzeugt einen String im Format YYYY-MM-DD


string2DateISO

public static java.util.Date string2DateISO(java.lang.String st)
Wandelt einen String der Form YYYY-MM-DD in ein Date-Objekt um.


time2StringISO

public static java.lang.String time2StringISO(java.util.Date date)
Erzeugt einen String der Form HH:MM:SS


string2TimeISO

public static java.util.Date string2TimeISO(java.lang.String st)
Wandelt einen String der Form HH:MM:SS in ein Date-Objekt um


datetime2StringISO

public static java.lang.String datetime2StringISO(java.util.Date date)
Erzeugt einen String im Format YYYY-MM-DD HH:MM:SS


strings2DateTimeISO

public static java.util.Date strings2DateTimeISO(java.lang.String date,
                                                 java.lang.String time)
Erzeugt ein Datums-Objekt aus Datum und Uhrzeit in der String-Darstellung. Die String-Darstellung von Datum und Uhrzeit müssen dabei im ISO-Format vorlegen (Datum als yyyy-mm-dd, Zeit als hh:mm:ss). Der Parameter time darf auch null sein, date jedoch nicht.

Parameters:
date - ein Datum in der ISO-Darstellung
time - eine Uhrzeit in der ISO-Darstellung (darf auch null sein)
Returns:
ein entsprechendes Datumsobjekt

date2String

public static java.lang.String date2String(java.util.Date date)
Deprecated.  

Wrapper für date2StringLocal(Date).


string2Date

public static java.util.Date string2Date(java.lang.String st)
Deprecated.  

Wrapper für string2DateLocal(String)


time2String

public static java.lang.String time2String(java.util.Date date)
Deprecated.  

Wrapper für time2StringLocal(Date)


string2Time

public static java.util.Date string2Time(java.lang.String st)
Deprecated.  

Wrapper für string2TimeLocal(String)


datetime2String

public static java.lang.String datetime2String(java.util.Date date)
Deprecated.  

Wrapper für datetime2StringLocal(Date)


strings2DateTime

public static java.util.Date strings2DateTime(java.lang.String date,
                                              java.lang.String time)
Deprecated.  

Wrapper für string2DateLocal(String)


encodeBase64

public static java.lang.String encodeBase64(byte[] x)
Gibt Daten Base64-encoded zurück. Die zu kodierenden Daten müssen als Byte-Array übergeben werden, als Resultat erhält man einen String mit der entsprechenden Base64-Kodierung.

Parameters:
x - zu kodierende Daten
Returns:
String mit Base64-kodierten Daten

decodeBase64

public static byte[] decodeBase64(java.lang.String st)
Dekodieren eines Base64-Datenstroms. Es wird zu einem gegebenen Base64-Datenstrom der dazugehörige "Klartext" zurückgegeben.

Parameters:
st - Base64-kodierten Daten
Returns:
dekodierter Datenstrom als Byte-Array

canCheckAccountCRC

public static boolean canCheckAccountCRC(java.lang.String blz)
Ermittelt, ob die Kontonummern für eine bestimmte BLZ mit HBCI4Java überprüft werden können oder nicht. Je nach Bank werden unterschiedliche Prüf-Algorithmen verwendet. Es sind noch nicht alle Prüf-Algorithmen in HBCI4Java implementiert - für manche Banken existiert auch keine Information darüber, welche Prüf-Algorithmen diese verwenden.

Mit dieser Methode kann nun ermittelt werden, ob für eine bestimmte Bank eine Prüfung möglich ist oder nicht.

Parameters:
blz - Die BLZ der Bank
Returns:
true, wenn die Kontonummern für diese Bank mit HBCI4Java validiert werden können, sonst false

checkAccountCRC

public static boolean checkAccountCRC(java.lang.String blz,
                                      java.lang.String number)

Überprüft, ob gegebene BLZ und Kontonummer zueinander passen. Bei diesem Test wird wird die in die Kontonummer "eingebaute" Prüziffer verifiziert. Anhand der BLZ wird ermittelt, welches Prüfzifferverfahren zur Überprüfung eingesetzt werden muss.

Ein positives Ergebnis dieser Routine bedeutet nicht, dass das entsprechende Konto bei der Bank existiert, sondern nur, dass die Kontonummer bei der entsprechenden Bank prinzipiell gültig ist.

Parameters:
blz - die Bankleitzahl der Bank, bei der das Konto geführt wird
number - die zu überprüfende Kontonummer
Returns:
true wenn die Kontonummer nicht verifiziert werden kann (z.B. weil das jeweilige Prüfzifferverfahren noch nicht in HBCI4Java implementiert ist) oder wenn die Prüfung erfolgreich verläuft; false wird immer nur dann zurückgegeben, wenn tatsächlich ein Prüfzifferverfahren zum Überprüfen verwendet wurde und die Prüfung einen Fehler ergab

checkAccountCRCByAlg

public static boolean checkAccountCRCByAlg(java.lang.String alg,
                                           java.lang.String blz,
                                           java.lang.String number)
Überprüfen einer Kontonummer mit einem gegebenen CRC-Algorithmus. Diese Methode wird intern von checkAccountCRC(String,String) aufgerufen und kann für Debugging-Zwecke auch direkt benutzt werden.

Parameters:
alg - Nummer des zu verwendenden Prüfziffer-Algorithmus (siehe Datei blz.properties).
blz - zu überprüfende Bankleitzahl
number - zu überprüfende Kontonummer
Returns:
false, wenn der Prüfzifferalgorithmus für die angegebene Kontonummer einen Fehler meldet, sonst true (siehe dazu auch checkAccountCRC(String, String))

checkAccountCRCByAlg

public static boolean checkAccountCRCByAlg(java.lang.String alg,
                                           java.lang.String number)
Deprecated.  

Use checkAccountCRCByAlg(String, String, String) instead!


checkIBANCRC

public static boolean checkIBANCRC(java.lang.String iban)
Überprüfen der Gültigkeit einer IBAN. Diese Methode prüft anhand eines Prüfziffer-Algorithmus, ob die übergebene IBAN prinzipiell gültig ist.

Returns:
false wenn der Prüfzifferntest fehlschlägt, sonst true

refreshBLZList

public static void refreshBLZList(java.io.InputStream in)
                           throws java.io.IOException
Aktivieren einer neuen Bankenliste. Diese Methode kann aufgerufen werden, um während der Laufzeit einer HBCI4Java-Anwendung eine neue Bankenliste zu aktivieren. Die Bankenliste wird aus dem übergebenen InputStream gelesen, welcher Daten im Format eines Java-Properties-Files liefern muss. Das konkrete Format der Property-Einträge der Bankenliste ist am Beispiel der bereits mitgelieferten Datei blz.properties ersichtlich.

Parameters:
in - Eingabe-Stream, der für das Laden der Bankleitzahlen-Daten verwendet werden soll
Throws:
java.io.IOException

string2Value

public static double string2Value(java.lang.String st)
Konvertiert einen String in einen double-Wert (entspricht Double.parseDouble(st)).

Parameters:
st - String, der konvertiert werden soll (Format "1234.56");
Returns:
double-Wert

value2String

public static java.lang.String value2String(double value)
Wandelt einen Double-Wert in einen String im Format "1234.56" um (also ohne Tausender-Trennzeichen und mit "." als Dezimaltrennzeichen).

Parameters:
value - zu konvertierender Double-Wert
Returns:
String-Darstellung dieses Wertes

version

public static java.lang.String version()
Gibt die Versionsnummer der HBCI4Java-Bibliothek zurück.

Returns:
verwendete HBCI4Java-Version

parseMT940

public static GVRKUms parseMT940(java.lang.String mt940)
Parsen eines MT940-Datenstroms (Kontoauszüge). Kontoauszüge können von vielen Software-Produkten im MT940-Format exportiert werden. Diese Methode nimmt einen solchen MT940-String entgegen, parst ihn und stellt ein GVRKUms-Objekt mit den geparsten Daten zur Verfügung.

Parameters:
mt940 - Der zu parsende MT940-String
Returns:
GVRKUms-Objekt für den einfachen Zugriff auf die Umsatzinformationen.