Class HBCICallbackSwing

All Implemented Interfaces:
HBCICallback
Direct Known Subclasses:
HBCICallbackSwingInternal

public class HBCICallbackSwing extends HBCICallbackConsole
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.
  • Field Details

  • 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 dem outStream 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 vom inStream gelesen.
      Specified by:
      callback in interface HBCICallback
      Overrides:
      callback in class HBCICallbackIOStreams
      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 Parameter reason 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 gleich TYPE_NONE, so werden keine Antwortdaten (also keine Nutzereingabe) erwartet, bei TYPE_SECRET und TYPE_TEXT wird ein normaler String erwartet.
      Der Unterschied zwischen beiden ist der, dass bei TYPE_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

      private void needSecret(Hashtable<String,Object> currentData, String winname)
    • correctAccountData

      private void correctAccountData(Hashtable<String,Object> currentData, String winname)
    • correctIBANData

      private void correctIBANData(Hashtable<String,Object> currentData, String winname)
    • needRDHData

      private void needRDHData(Hashtable<String,Object> currentData)
    • needProxyData

      private void needProxyData(Hashtable<String,Object> currentData)
    • needAction

      private void needAction(Hashtable<String,Object> currentData, boolean blocking, String winname)
    • removeActionWindow

      private void removeActionWindow(Hashtable<String,Object> currentData, String winname)
    • ackInstKeys

      private void ackInstKeys(Hashtable<String,Object> currentData, String winname)
    • handleError

      private void handleError(Hashtable<String,Object> currentData, String winname)
    • haveNewMyKeys

      private void haveNewMyKeys(Hashtable<String,Object> currentData, String winname)
    • showInstMessage

      protected void showInstMessage(Hashtable<String,Object> currentData, String winname)
    • showInstMessage

      protected void showInstMessage(Hashtable<String,Object> currentData, String winname, boolean blocking)
    • showConnectionMessage

      protected void showConnectionMessage(Hashtable<String,Object> currentData, String winname)
    • needSIZEntrySelect

      private void needSIZEntrySelect(Hashtable<String,Object> currentData, String winname)
    • needPTSecMech

      private void needPTSecMech(Hashtable<String,Object> currentData, String winname)
    • createWin

      protected Container createWin(Hashtable<String,Object> currentData, String title, String winname)
    • removeWin

      protected void removeWin(Hashtable<String,Object> currentData, String winname)
    • drawWin

      protected void drawWin(Hashtable<String,Object> currentData, String winname)