public abstract class HBCIJobImpl extends Object implements HBCIJob
| Modifier and Type | Field and Description |
|---|---|
protected HBCIJobResultImpl |
jobResult |
protected HBCIPassport |
passport |
| Modifier | Constructor and Description |
|---|---|
protected |
HBCIJobImpl(HBCIPassport passport,
MsgGen gen,
String jobnameLL,
HBCIJobResultImpl jobResult) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
acceptsParam(String hlParamName) |
protected void |
addConstraint(String frontendName,
String destinationName,
String defValue,
int logFilterLevel) |
protected void |
addConstraint(String frontendName,
String destinationName,
String defValue,
int logFilterLevel,
boolean indexed) |
protected void |
checkAccountCRC(String frontendname) |
SEG |
createJobSegment() |
SEG |
createJobSegment(int segnum) |
protected void |
extractResults(HBCIMsgStatus msgstatus,
String header,
int idx) |
void |
fillJobResult(HBCIMsgStatus status,
int offset) |
String |
getChallengeParam(String path) |
String |
getExternalId()
Liefert eine optionalen Identifier, der von der Banking-Anwendung genutzt werden kann, um einen Bezug zum urspruenglichen
Auftrag herstellen zu koennen.
|
String |
getHBCICode() |
String |
getJobName() |
List<String> |
getJobParameterNames() |
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<String> |
getJobResultNames()
Gibt alle möglichen Property-Namen für die Lowlevel-Rückgabedaten dieses
Jobs zurück.
|
String |
getLowlevelParam(String key) |
Properties |
getLowlevelParams()
Gibt alle für diesen Job gesetzten Parameter zurück.
|
int |
getMaxNumberPerMsg() |
int |
getMinSigs() |
String |
getName()
Gibt den internen Namen für diesen Job zurück.
|
Konto |
getOrderAccount()
Liefert das Auftraggeber-Konto, wie es ab HKTAN5 erforderlich ist.
|
int |
getSecurityClass() |
String |
getSegVersion()
Gibt die für diesen Job verwendete Segment-Versionsnummer zurück
|
boolean |
needsContinue(int loop) |
protected void |
saveReturnValues(HBCIMsgStatus status,
int sref) |
void |
setContinueOffset(int loop) |
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 |
setIdx(int idx) |
protected void |
setLowlevelParam(String key,
String value) |
void |
setLowlevelParams(Properties llParams) |
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).
|
void |
setSegVersion(String version)
Legt die Versionsnummer des Segments manuell fest.
|
protected boolean |
twoDigitValueInList(String value,
String list) |
void |
verifyConstraints() |
protected HBCIJobResultImpl jobResult
protected HBCIPassport passport
protected HBCIJobImpl(HBCIPassport passport, MsgGen gen, String jobnameLL, HBCIJobResultImpl jobResult)
public String getJobName()
public String getHBCICode()
public void setSegVersion(String version)
version - die neue Versionsnummer.public int getMaxNumberPerMsg()
public int getMinSigs()
public int getSecurityClass()
protected void addConstraint(String frontendName, String destinationName, String defValue, int logFilterLevel)
protected void addConstraint(String frontendName, String destinationName, String defValue, int logFilterLevel, boolean indexed)
public void verifyConstraints()
public SEG createJobSegment()
public SEG createJobSegment(int segnum)
public List<String> getJobResultNames()
HBCIJobHBCIJob.getJobResult() und HBCIJobResult.getResultData()
ermittelt werden. Diese Methode verwendet intern
HBCIHandler.getLowlevelJobResultNames(String).getJobResultNames in interface HBCIJobpublic Properties getJobRestrictions()
HBCIJobGibt 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)
getJobRestrictions in interface HBCIJobpublic void setParam(String paramname, Konto acc)
setParam(String, String) erzeugt werden (je einer für
die Länderkennung, die Bankleitzahl und die Kontonummer). Durch Verwendung dieser
Methode wird dieser Weg abgekürzt. Es wird ein Kontoobjekt übergeben, für welches
die entsprechenden drei setParam(String,String)-Aufrufe automatisch
erzeugt werden.public void setParam(String paramname, Integer index, Konto acc)
setParam in interface HBCIJobHBCIJob.setParam(java.lang.String, java.lang.Integer, org.kapott.hbci.structures.Konto)public 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.public void 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.public void setParam(String paramName, int i)
setParam(String, String).protected boolean acceptsParam(String hlParamName)
public void 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.
public void 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.
public void setContinueOffset(int loop)
public Properties getLowlevelParams()
HBCIJobProperties-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.valuegetLowlevelParams in interface HBCIJobpublic void setLowlevelParams(Properties llParams)
public void setIdx(int idx)
public String getName()
HBCIJobpublic String getSegVersion()
HBCIJobgetSegVersion in interface HBCIJobpublic boolean needsContinue(int loop)
public void fillJobResult(HBCIMsgStatus status, int offset)
protected void saveReturnValues(HBCIMsgStatus status, int sref)
protected void extractResults(HBCIMsgStatus msgstatus, String header, int idx)
public HBCIJobResult getJobResult()
HBCIJobgetJobResult in interface HBCIJobprotected void checkAccountCRC(String frontendname)
public Konto getOrderAccount()
public String getExternalId()
HBCIJobgetExternalId in interface HBCIJobHBCIJob.getExternalId()public void setExternalId(String id)
HBCIJobsetExternalId in interface HBCIJobid - optionale ID.HBCIJob.setExternalId(java.lang.String)Copyright © 2018. All rights reserved.