org.kapott.hbci.passport
Class AbstractHBCIPassport

java.lang.Object
  |
  +--org.kapott.hbci.passport.AbstractHBCIPassport
All Implemented Interfaces:
HBCIPassport, HBCIPassportInternal
Direct Known Subclasses:
HBCIPassportAnonymous, HBCIPassportDDV, HBCIPassportPinTan, HBCIPassportRDH

public abstract class AbstractHBCIPassport
extends java.lang.Object
implements HBCIPassportInternal

Diese Klasse stellt die Basisklasse für alle "echten" Passport-Implementationen dar. Hier werden bereits einige Methoden implementiert sowie einige zusätzliche Hilfsmethoden zur Verfügung gestellt.

Aus einer HBCI-Anwendung heraus ist hier nur eine einzige Methode interessant, um eine Instanz eines bestimmtes Passports zu erzeugen

See Also:
Serialized Form

Method Summary
static HBCIPassport getInstance()
          Entspricht getInstance((Object)null)
static HBCIPassport getInstance(java.lang.Object init)
          Erzeugt eine Instanz eines HBCI-Passports.
static HBCIPassport getInstance(java.lang.String name)
          Entspricht getInstance(name,null)
static HBCIPassport getInstance(java.lang.String name, java.lang.Object init)
          Erzeugt eine Instanz eines HBCIPassports und gibt diese zurück.
 
Methods inherited from interface org.kapott.hbci.passport.HBCIPassport
changePassphrase, clearBPD, clearUPD, close, fillAccountInfo, getAccount, getAccounts, getBLZ, getBPD, getBPDVersion, getClientData, getCountry, getCustomerId, getDefaultLang, getFilterType, getHBCIVersion, getHost, getInstName, getPort, getSuppLangs, getSuppSecMethods, getSuppVersions, getUPD, getUPDVersion, getUserId, saveChanges, setClientData, setCustomerId, setHost, syncSigId, syncSysId
 

Method Detail

getInstance

public static HBCIPassport getInstance(java.lang.String name,
                                       java.lang.Object init)

Erzeugt eine Instanz eines HBCIPassports und gibt diese zurück. Der Typ der erzeugten Passport-Instanz wird durch den Parameter name bestimmt. Gültige Werte sind zur Zeit

Der zusätzliche Parameter init gibt ein Objekt an, welches bereits während der Instanziierung des Passport-Objektes in dessen internen clientData-Datenstrukturen gespeichert wird (siehe setClientData()). Auf dieses Objekt kann dann mit getClientData("init") zugegriffen werden. Ist init==null), wo wird init=name gesetzt.

Beim Erzeugen eines Passport-Objektes tritt i.d.R. der Callback NEED_PASSPHRASE auf, um nach dem Passwort für das Einlesen der Schlüsseldatei zu fragen. Von der Callback-Methode eventuell zusätzlich benötigte Daten zu diesem Passport konnten bis zu dieser Stelle noch nicht via setClientData(...) gesetzt werden, weil das Passport-Objekt noch gar nicht existierte. Für diesen Zweck gibt es das init-Objekt, welches bereits beim Erzeugen des Passport-Objektes (und vor dem Aufrufen eines Callbacks) zu den zusätzlichen Passport-Daten hinzugefügt wird (mit der id "init").

Eine beispielhafte (wenn auch nicht sehr praxisnahe) Anwendung dieses Features wird im Quelltext des Tools AnalyzeReportOfTransactions gezeigt. Zumindest das Prinzip sollte damit jedoch klar werden.

Parameters:
name - Typ der zu erzeugenden Passport-Instanz
init - Objekt, welches schon während der Passport-Erzeugung via setClientData("init",init) zu den Passport-Daten hinzugefügt wird.
Returns:
Instanz eines HBCIPassports

getInstance

public static HBCIPassport getInstance(java.lang.Object init)
Erzeugt eine Instanz eines HBCI-Passports. Der Typ der erzeugten Passport-Instanz wird hierbei dem Wert des HBCI-Parameters client.passport.default entnommen. Gültige Werte für diesen HBCI-Parameter sind die gleichen wie beim Aufruf der Methode getInstance(name).

Parameters:
init - (siehe getInstance(String,Object))
Returns:
Instanz eines HBCI-Passports

getInstance

public static HBCIPassport getInstance(java.lang.String name)
Entspricht getInstance(name,null)


getInstance

public static HBCIPassport getInstance()
Entspricht getInstance((Object)null)