public interface HBCIJob
Schnittstelle für alle Aufträge, die via HBCI ausgeführt werden sollen. Ein HBCIJob-Objekt wird nur innerhalb von HBCI4Java verwaltet. Durch Aufruf einer der Methoden Die konkrete Klasse dieser Instanz ist für den Anwendungsentwickler nicht von Bedeutung.
Die Anwendung muss nur die für diesen Job benötigten Parameter setzen (mit
setParam(String, String)).
Nach Ausführung des HBCI-Dialoges können die Rückgabedaten und Statusinformationen für diesen
Job ermittelt werden. Dazu wird die Methoode getJobResult() benötigt, welche
eine Instanz einer HBCIJobResult-Klasse zurückgibt.
Die konkrete Klasse, um die es sich bei diesem Result-Objekt handelt, ist vom Typ des ausgeführten
Jobs abhängig (z.B. gibt es eine Klasse, die Ergebnisdaten für Kontoauszüge enthält, eine
Klasse für Saldenabfragen usw.). Eine Beschreibung der einzelnen Klassen für Result-Objekte findet
sich im Package org.kapott.hbci.GV_Result. Eine Beschreibung, welcher Job welche Klasse
zurückgibt, befindet sich in der Package-Dokumentation zu diesem Package (org.kapott.hbci.GV).
| Modifier and Type | Method and Description |
|---|---|
String |
getExternalId()
Liefert eine optionalen Identifier, der von der Banking-Anwendung genutzt werden kann, um einen Bezug zum urspruenglichen
Auftrag herstellen zu koennen.
|
Properties |
getJobRestrictions()
Gibt für einen Job alle bekannten Einschränkungen zurück, die bei
der Ausführung des jeweiligen Jobs zu beachten sind.
|
HBCIJobResult |
getJobResult()
Gibt ein Objekt mit den Rückgabedaten für diesen Job zurück.
|
List |
getJobResultNames()
Gibt alle möglichen Property-Namen für die Lowlevel-Rückgabedaten dieses
Jobs zurück.
|
Properties |
getLowlevelParams()
Gibt alle für diesen Job gesetzten Parameter zurück.
|
String |
getName()
Gibt den internen Namen für diesen Job zurück.
|
String |
getSegVersion()
Gibt die für diesen Job verwendete Segment-Versionsnummer zurück
|
void |
setExternalId(String id)
Kann von der Banking-Anwendung genutzt werden, um einen eigenen Identifier im Job zu speichern, um im spaeteren
Verlauf des HBCI-Dialoges (z.Bsp. bei der TAN-Eingabe) einen Bezug zum urspruenglichen Auftrag wiederherstellen zu
koennen.
|
void |
setParam(String paramName,
Date date)
Setzen eines Job-Parameters, bei dem ein Datums als Wert erwartet wird.
|
void |
setParam(String paramName,
int i)
Setzen eines Job-Parameters, bei dem ein Integer-Wert Da als Wert erwartet wird.
|
void |
setParam(String paramName,
Integer index,
Date date) |
void |
setParam(String paramname,
Integer index,
Konto acc) |
void |
setParam(String paramName,
Integer index,
String value)
Setzen eines Job-Parameters.
|
void |
setParam(String paramname,
Integer index,
Value v) |
void |
setParam(String paramname,
Konto acc)
Setzen eines komplexen Job-Parameters (Kontodaten).
|
void |
setParam(String paramName,
String value)
Setzen eines Job-Parameters.
|
void |
setParam(String paramname,
Value v)
Setzen eines komplexen Job-Parameters (Geldbetrag).
|
String getName()
String getSegVersion()
List getJobResultNames()
getJobResult() und HBCIJobResult.getResultData()
ermittelt werden. Diese Methode verwendet intern
HBCIHandler.getLowlevelJobResultNames(String).Properties getJobRestrictions()
Gibt für einen Job alle bekannten Einschränkungen zurück, die bei der Ausführung des jeweiligen Jobs zu beachten sind. Diese Daten werden aus den Bankparameterdaten des aktuellen Passports extrahiert. Sie können von einer HBCI-Anwendung benutzt werden, um gleich entsprechende Restriktionen bei der Eingabe von Geschäftsvorfalldaten zu erzwingen (z.B. die maximale Anzahl von Verwendungszweckzeilen, ob das Ändern von terminierten Überweisungen erlaubt ist usw.).
Die einzelnen Einträge des zurückgegebenen Properties-Objektes enthalten als Key die
Bezeichnung einer Restriktion (z.B. "maxusage"), als Value wird der
entsprechende Wert eingestellt. Die Bedeutung der einzelnen Restriktionen ist zur Zeit
nur der HBCI-Spezifikation zu entnehmen. In späteren Programmversionen werden entsprechende
Dokumentationen zur internen HBCI-Beschreibung hinzugefügt, so dass dafür eine Abfrageschnittstelle
implementiert werden kann.
Diese Methode verwendet intern
org.kapott.hbci.manager.HBCIHandler#getLowlevelJobRestrictions(String)
Properties getLowlevelParams()
Properties-Objekt sind werden die
Parameter als Lowlevel-Parameter abgelegt. Außerdem hat
jeder Lowlevel-Parametername zusätzlich ein Prefix, welches den
Lowlevel-Job angibt, für den der Parameter gilt (also z.B.
Ueb3.BTG.valuevoid setParam(String paramname, Konto acc)
setParam(String, String) erzeugt werden (Länderkennung, Bankleitzahl,
Kontonummer, Unterkontomerkmal, Währung, IBAN, BIC).
Durch Verwendung dieser Methode wird dieser Weg abgekürzt. Es wird ein Kontoobjekt
übergeben, für welches die entsprechenden setParam(String,String)-Aufrufe
automatisch erzeugt werden.paramname - die Basis der Parameter für die Kontodaten (für my.country,
my.blz, my.number, my.subnumber, my.bic,
my.iban, my.curr wäre das also "my")acc - ein Konto-Objekt, aus welchem die zu setzenden Parameterdaten entnommen werdenvoid setParam(String paramname, Integer index, Konto acc)
paramname - index - acc - - jedoch mit Index.void setParam(String paramname, Value v)
setParam(String, String) erzeugt werden (je einer für
den Wert und die Währung). Durch Verwendung dieser
Methode wird dieser Weg abgekürzt. Es wird ein Value-Objekt übergeben, für welches
die entsprechenden zwei setParam(String,String)-Aufrufe automatisch
erzeugt werden.paramname - die Basis der Parameter für die Geldbetragsdaten (für "btg.value" und
"btg.curr" wäre das also "btg")v - ein Value-Objekt, aus welchem die zu setzenden Parameterdaten entnommen werdenvoid setParam(String paramName, Date date)
setParam(String, String), um das Datum in einen korrekt
formatierten String umzuwandeln. Das "richtige" Datumsformat ist dabei abhängig vom
aktuellen Locale.paramName - Name des zu setzenden Job-Parametersdate - Datum, welches als Wert für den Job-Parameter benutzt werden sollvoid setParam(String paramName, int i)
setParam(String, String).paramName - Name des zu setzenden Job-Parametersi - Integer-Wert, der als Wert gesetzt werden sollvoid setParam(String paramName, String value)
Setzen eines Job-Parameters. Für alle Highlevel-Jobs ist in der Package-Beschreibung zum
Package org.kapott.hbci.GV eine Auflistung aller Jobs und deren Parameter zu finden.
Für alle Lowlevel-Jobs kann eine Liste aller Parameter entweder mit dem Tool
ShowLowlevelGVs oder zur Laufzeit durch Aufruf
der Methode HBCIHandler.getLowlevelJobParameterNames(String)
ermittelt werden.
Bei Verwendung dieser oder einer der anderen setParam()-Methoden werden zusätzlich
einige der Job-Restriktionen (siehe getJobRestrictions()) analysiert. Beim Verletzen einer
der überprüften Einschränkungen wird eine Exception mit einer entsprechenden Meldung erzeugt.
Diese Überprüfung findet allerdings nur bei Highlevel-Jobs statt.
paramName - der Name des zu setzenden Parameters.value - Wert, auf den der Parameter gesetzt werden sollvoid setParam(String paramName, Integer index, String value)
Setzen eines Job-Parameters. Für alle Highlevel-Jobs ist in der Package-Beschreibung zum
Package org.kapott.hbci.GV eine Auflistung aller Jobs und deren Parameter zu finden.
Für alle Lowlevel-Jobs kann eine Liste aller Parameter entweder mit dem Tool
ShowLowlevelGVs oder zur Laufzeit durch Aufruf
der Methode HBCIHandler.getLowlevelJobParameterNames(String)
ermittelt werden.
Bei Verwendung dieser oder einer der anderen setParam()-Methoden werden zusätzlich
einige der Job-Restriktionen (siehe getJobRestrictions()) analysiert. Beim Verletzen einer
der überprüften Einschränkungen wird eine Exception mit einer entsprechenden Meldung erzeugt.
Diese Überprüfung findet allerdings nur bei Highlevel-Jobs statt.
paramName - der Name des zu setzenden Parameters.index - der Index bei Index-Parametern, sonst nullvalue - Wert, auf den der Parameter gesetzt werden sollHBCIJobResult getJobResult()
void setExternalId(String id)
id - optionale ID.String getExternalId()
Copyright © 2018. All rights reserved.