Package org.kapott.hbci.GV
Class AbstractSEPAGV
- java.lang.Object
-
- org.kapott.hbci.GV.AbstractHBCIJob
-
- org.kapott.hbci.GV.AbstractSEPAGV
-
- Direct Known Subclasses:
AbstractGVLastSEPA,GVDauerSEPADel,GVDauerSEPAEdit,GVDauerSEPAList,GVDauerSEPANew,GVKUmsAllCamt,GVRawSEPA,GVTermUebSEPA,GVTermUebSEPADel,GVTermUebSEPAEdit,GVTermUebSEPAList,GVUebSEPA,GVUmbSEPA
public abstract class AbstractSEPAGV extends AbstractHBCIJob
Abstrakte Basis-Klasse fuer JAXB-basierte SEPA-Jobs.
-
-
Field Summary
Fields Modifier and Type Field Description static StringENDTOEND_ID_NOTPROVIDEDToken, der als End-to-End ID Platzhalter verwendet wird, wenn keine angegeben wurde.-
Fields inherited from class org.kapott.hbci.GV.AbstractHBCIJob
jobResult, passport
-
-
Constructor Summary
Constructors Constructor Description AbstractSEPAGV(HBCIPassportInternal passport, String name)AbstractSEPAGV(HBCIPassportInternal passport, String name, HBCIJobResultImpl jobResult)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddConstraint(String frontendName, String destinationName, String defValue)protected voidcreatePainXml()Erstellt die XML für diesen Job und schreibt diese in den _sepapain Parameter des Jobsprotected abstract SepaVersiongetDefaultPainVersion()Liefert die Default-PAIN-Version, das verwendet werden soll, wenn von der Bank keine geliefert wurden.StringgetLowlevelParam(String key)This is needed for verifyConstraints().abstract StringgetPainJobName()Referenzierter painVersion-Jobname.StringgetPainMessageId()Gibt die SEPA Message ID als String zurück.protected abstract SepaVersion.TypegetPainType()Liefert den PAIN-Type.SepaVersiongetPainVersion()Liefert den zu verwendenden PAIN-Version fuer die HBCI-Nachricht.StringgetRawData()voidsetLowlevelParam(String key, String value)voidverifyConstraints()Bei SEPA Geschäftsvorfällen müssen wir verifyConstraints überschreiben um die SEPA XML zu generieren-
Methods inherited from class org.kapott.hbci.GV.AbstractHBCIJob
addConstraint, addLoop, applyOffset, canNationalAcc, checkAccountCRC, createOrderHash, extractResults, fillJobResult, getChallengeParam, getConstraints, getHBCICode, getHBCICode, getJobName, getJobRestrictions, getJobResult, getLowlevelParams, getMaxNumberPerMsg, getName, getSegVersion, isVeu, redo, setIdx, setLlParams, setParam, setParam, setParam, setParam, setParam, setParam, setParam, setParam, setParam, setSegVersion, setVeu, skipped
-
-
-
-
Field Detail
-
ENDTOEND_ID_NOTPROVIDED
public static final String ENDTOEND_ID_NOTPROVIDED
Token, der als End-to-End ID Platzhalter verwendet wird, wenn keine angegeben wurde. In painVersion.001.001.02 wurde dieser Token noch explizit erwaehnt. Inzwischen nicht mehr. Nach Ruecksprache mit Holger vom onlinebanking-forum.de weiss ich aber, dass VRNetworld den auch verwendet und er von Banken als solcher erkannt wird.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractSEPAGV
public AbstractSEPAGV(HBCIPassportInternal passport, String name)
-
AbstractSEPAGV
public AbstractSEPAGV(HBCIPassportInternal passport, String name, HBCIJobResultImpl jobResult)
-
-
Method Detail
-
getDefaultPainVersion
protected abstract SepaVersion getDefaultPainVersion()
Liefert die Default-PAIN-Version, das verwendet werden soll, wenn von der Bank keine geliefert wurden.- Returns:
- Default-Pain-Version.
-
getPainType
protected abstract SepaVersion.Type getPainType()
Liefert den PAIN-Type.- Returns:
- der PAIN-Type.
-
getLowlevelParam
public String getLowlevelParam(String key)
This is needed for verifyConstraints(). Because verifyConstraints() tries to read the lowlevel-values for each constraint, the lowlevel-values for sepa.xxx would always be empty (because they do not exist in hbci messages). So we read the sepa lowlevel-values from the special sepa structure instead from the lowlevel params for the message- Overrides:
getLowlevelParamin classAbstractHBCIJob- Parameters:
key- key- Returns:
- the lowlevel param.
-
getPainMessageId
public String getPainMessageId()
Gibt die SEPA Message ID als String zurück. Existiert noch keine wird sie aus Datum und User ID erstellt.- Returns:
- SEPA Message ID
-
getPainVersion
public SepaVersion getPainVersion()
Liefert den zu verwendenden PAIN-Version fuer die HBCI-Nachricht.- Overrides:
getPainVersionin classAbstractHBCIJob- Returns:
- der zu verwendende PAIN-Version fuer die HBCI-Nachricht.
-
createPainXml
protected void createPainXml()
Erstellt die XML für diesen Job und schreibt diese in den _sepapain Parameter des Jobs
-
getRawData
public String getRawData()
- Overrides:
getRawDatain classAbstractHBCIJob
-
addConstraint
protected void addConstraint(String frontendName, String destinationName, String defValue)
- Overrides:
addConstraintin classAbstractHBCIJob- See Also:
Ueberschrieben, um die Default-Werte der SEPA-Parameter vorher rauszufischen und in "this.painParams" zu speichern. Die brauchen wir "createPainXml" beim Erstellen des XML - sie wuerden dort sonst aber fehlen, weil Default-Werte eigentlich erst in "verifyConstraints" uebernommen werden.
-
verifyConstraints
public void verifyConstraints()
Bei SEPA Geschäftsvorfällen müssen wir verifyConstraints überschreiben um die SEPA XML zu generieren- Overrides:
verifyConstraintsin classAbstractHBCIJob
-
getPainJobName
public abstract String getPainJobName()
Referenzierter painVersion-Jobname. Bei vielen Geschäftsvorfällen (z.B. Daueraufträgen) wird die painVersion der Einzeltransaktion verwendet.- Returns:
- Value
-
-