Package org.kapott.hbci.callback
Class HBCICallbackSwing
java.lang.Object
org.kapott.hbci.callback.AbstractHBCICallback
org.kapott.hbci.callback.HBCICallbackIOStreams
org.kapott.hbci.callback.HBCICallbackConsole
org.kapott.hbci.callback.HBCICallbackSwing
- All Implemented Interfaces:
HBCICallback
- Direct Known Subclasses:
HBCICallbackSwingInternal
Default-Implementation einer Callback-Klasse für Anwendungen mit GUI.
Diese Klasse überschreibt die
callback()
-Methode. Benötigte Nutzereingaben
werden hier nicht mehr über STDIN abgefragt, sondern es wird ein neues Top-Level-Window
erzeugt, welches die entsprechende Meldung sowie ein Feld zur Eingabe
der Antwort enthält. Kernel-Meldungen und erwartete Nutzeraktionen werden ebenfalls
durch ein neues Top-Level-Window realisiert. Die Methoden log()
und
status()
werden nicht überschrieben, so dass diese weiterhin das Verhalten
der HBCICallbackConsole
-Klasse zeigen.-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final boolean
static final boolean
static final boolean
static final boolean
protected Hashtable
<HBCIPassport, Hashtable<String, Object>> Fields inherited from interface org.kapott.hbci.callback.HBCICallback
CLOSE_CONNECTION, HAVE_CHIPCARD, HAVE_CRC_ERROR, HAVE_ERROR, HAVE_HARDPIN, HAVE_IBAN_ERROR, HAVE_INST_MSG, HAVE_NEW_MY_KEYS, NEED_BLZ, NEED_CHIPCARD, NEED_CONNECTION, NEED_COUNTRY, NEED_CUSTOMERID, NEED_FILTER, NEED_HARDPIN, NEED_HOST, NEED_INFOPOINT_ACK, NEED_NEW_INST_KEYS_ACK, NEED_PASSPHRASE_LOAD, NEED_PASSPHRASE_SAVE, NEED_PORT, NEED_PROXY_PASS, NEED_PROXY_USER, NEED_PT_DECOUPLED, NEED_PT_PHOTOTAN, NEED_PT_PIN, NEED_PT_QRTAN, NEED_PT_SECMECH, NEED_PT_TAN, NEED_PT_TANMEDIA, NEED_REMOVE_CHIPCARD, NEED_SIZENTRY_SELECT, NEED_SOFTPIN, NEED_USERID, STATUS_DIALOG_END, STATUS_DIALOG_END_DONE, STATUS_DIALOG_INIT, STATUS_DIALOG_INIT_DONE, STATUS_INIT_SIGID, STATUS_INIT_SIGID_DONE, STATUS_INIT_SYSID, STATUS_INIT_SYSID_DONE, STATUS_INIT_UPD, STATUS_INIT_UPD_DONE, STATUS_INST_BPD_INIT, STATUS_INST_BPD_INIT_DONE, STATUS_INST_GET_KEYS, STATUS_INST_GET_KEYS_DONE, STATUS_LOCK_KEYS, STATUS_LOCK_KEYS_DONE, STATUS_MSG_CREATE, STATUS_MSG_CRYPT, STATUS_MSG_DECRYPT, STATUS_MSG_PARSE, STATUS_MSG_RAW_RECV, STATUS_MSG_RAW_RECV_ENCRYPTED, STATUS_MSG_RAW_SEND, STATUS_MSG_RECV, STATUS_MSG_SEND, STATUS_MSG_SIGN, STATUS_MSG_VERIFY, STATUS_SEND_INFOPOINT_DATA, STATUS_SEND_KEYS, STATUS_SEND_KEYS_DONE, STATUS_SEND_TASK, STATUS_SEND_TASK_DONE, TYPE_BOOLEAN, TYPE_NONE, TYPE_SECRET, TYPE_TEXT, USERID_CHANGED, WRONG_PIN
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
ackInstKeys
(Hashtable<String, Object> currentData, String winname) void
callback
(HBCIPassport passport, int reason, String msg, int datatype, StringBuffer retData) Diese Methode reagiert auf alle möglichen Callback-Ursachen.private void
correctAccountData
(Hashtable<String, Object> currentData, String winname) private void
correctIBANData
(Hashtable<String, Object> currentData, String winname) protected Container
protected void
private void
handleError
(Hashtable<String, Object> currentData, String winname) private void
haveNewMyKeys
(Hashtable<String, Object> currentData, String winname) private void
needAction
(Hashtable<String, Object> currentData, boolean blocking, String winname) private void
needProxyData
(Hashtable<String, Object> currentData) private void
needPTSecMech
(Hashtable<String, Object> currentData, String winname) private void
needRDHData
(Hashtable<String, Object> currentData) private void
needSecret
(Hashtable<String, Object> currentData, String winname) private void
needSIZEntrySelect
(Hashtable<String, Object> currentData, String winname) private void
removeActionWindow
(Hashtable<String, Object> currentData, String winname) protected void
protected void
showConnectionMessage
(Hashtable<String, Object> currentData, String winname) protected void
showInstMessage
(Hashtable<String, Object> currentData, String winname) protected void
showInstMessage
(Hashtable<String, Object> currentData, String winname, boolean blocking) Methods inherited from class org.kapott.hbci.callback.HBCICallbackIOStreams
getInStream, getOutStream, log, readLine, setInStream, setOutStream, status
Methods inherited from class org.kapott.hbci.callback.AbstractHBCICallback
createDefaultLogLine, status, useThreadedCallback
-
Field Details
-
ACTION_BLOCKING
public static final boolean ACTION_BLOCKING- See Also:
-
ACTION_NOT_BLOCKING
public static final boolean ACTION_NOT_BLOCKING- See Also:
-
DIALOG_MODAL
public static final boolean DIALOG_MODAL- See Also:
-
DIALOG_NOT_MODAL
public static final boolean DIALOG_NOT_MODAL- See Also:
-
passports
-
-
Constructor Details
-
HBCICallbackSwing
public HBCICallbackSwing()
-
-
Method Details
-
callback
public void callback(HBCIPassport passport, int reason, String msg, int datatype, StringBuffer retData) Description copied from class:HBCICallbackIOStreams
Diese Methode reagiert auf alle möglichen Callback-Ursachen. Bei Callbacks, die nur Informationen an den Anwender übergeben sollen, werden diese auf demoutStream
ausgegeben. Bei Callbacks, die Aktionen vom Anwender erwarten (Einlegen der Chipkarte), wird eine entsprechende Aufforderung ausgegeben. Bei Callbacks, die eine Eingabe vom Nutzer erwarten, wird die entsprechende Eingabeaufforderung ausgegeben und die Eingabe vominStream
gelesen.- Specified by:
callback
in interfaceHBCICallback
- Overrides:
callback
in classHBCICallbackIOStreams
- Parameters:
passport
- enthält das Passport-Objekt, bei dessen Benutzung der Callback erzeugt wurde. Falls also in einer Anwendung mehrere Passport-Objekte gleichzeitig benutzt werden, so kann anhand dieses Parameters festgestellt werden, welches Passport (und damit welches HBCIHandle) HBCI4Java gerade benutzt.reason
- gibt den Grund für diesen Aufruf an. Dieser Parameter kann alle Werte annehmen, die als "Ursache des Callback-Aufrufes" in der Dokumentation aufgeführt sind. Je nach Wert dieses Parameters werden vom Nutzer Aktionen oder Eingaben erwartet.msg
- ein Hinweistext, der den Grund des Callbacks näher beschreibt. Dieser Parameter muss nicht ausgewertet werden, der Parameterreason
ist bereits eindeutig. Er dient nur dazu, bei Anwendungen, die nicht für jeden Ursache des Callback-Aufrufes einen eigenen Hinweistext bereitstellen wollen, eine Art default-Wert für den anzuzeigenden Text bereitzustellen.datatype
- legt fest, welchen Datentyp die vom HBCI-Kernel erwarteten Antwortdaten haben müssen. Ist dieser Wert gleichTYPE_NONE
, so werden keine Antwortdaten (also keine Nutzereingabe) erwartet, beiTYPE_SECRET
undTYPE_TEXT
wird ein normaler String erwartet.
Der Unterschied zwischen beiden ist der, dass beiTYPE_SECRET
sensible Daten (Passwörter usw.) eingegeben werden sollen, so dass die Eingaberoutine evtl. anders arbeiten muss (z.B. Sternchen anstatt dem eingegebenen Text darstellen).retData
- In diesem StringBuffer-Objekt müssen die Antwortdaten abgelegt werden. Beim Aufruf der Callback-Methode von HBCI4Java wird dieser StringBuffer u.U. mit einem vorgeschlagenen default-Wert für die Nutzereingabe gefüllt.
-
needSecret
-
correctAccountData
-
correctIBANData
-
needRDHData
-
needProxyData
-
needAction
-
removeActionWindow
-
ackInstKeys
-
handleError
-
haveNewMyKeys
-
showInstMessage
-
showInstMessage
-
showConnectionMessage
-
needSIZEntrySelect
-
needPTSecMech
-
createWin
-
removeWin
-
drawWin
-