Class HBCIProperties

java.lang.Object
de.willuhn.jameica.hbci.HBCIProperties

public class HBCIProperties extends Object
enthaelt HBCI-Parameter.
  • Field Details

    • HBCI_DTAUS_VALIDCHARS

      public static final String HBCI_DTAUS_VALIDCHARS
      Liste der in DTAUS erlaubten Zeichen.
    • HBCI_SEPA_VALIDCHARS

      public static final String HBCI_SEPA_VALIDCHARS
      Liste der in SEPA erlaubten Zeichen. Siehe http://www.ebics.de/fileadmin/unsecured/anlage3/anlage3_spec/Anlage_3_DatenformateV2.6.pdf Absatz 2.1, BUGZILLA 1244
    • HBCI_SEPA_MANDATE_VALIDCHARS

      public static final String HBCI_SEPA_MANDATE_VALIDCHARS
      Liste der fuer die Mandate-ID gueltigen Zeichen. RestrictedIdentificationSEPA2.
    • HBCI_SEPA_PMTINF_VALIDCHARS

      public static final String HBCI_SEPA_PMTINF_VALIDCHARS
      Liste der fuer die Referenz gueltigen Zeichen. RestrictedIdentificationSEPA1.
    • HBCI_IBAN_VALIDCHARS

      public static final String HBCI_IBAN_VALIDCHARS
      Liste der in einer IBAN erlaubten Zeichen.
    • HBCI_BIC_VALIDCHARS

      public static final String HBCI_BIC_VALIDCHARS
      Liste der in einer BIC erlaubten Zeichen.
    • HBCI_SEPA_PURPOSECODE_VALIDCHARS

      public static final String HBCI_SEPA_PURPOSECODE_VALIDCHARS
      Liste der in Purpose-Codes erlaubten Zeichen.
    • HBCI_BLZ_VALIDCHARS

      public static final String HBCI_BLZ_VALIDCHARS
      Liste der in Bankleitzahlen erlaubten Zeichen.
    • HBCI_BZU_VALIDCHARS

      public static final String HBCI_BZU_VALIDCHARS
      Liste der in der BZÜ-Pruefziffer erlaubten Zeichen.
    • HBCI_KTO_VALIDCHARS

      public static final String HBCI_KTO_VALIDCHARS
      BUGZILLA 280 Liste der in Kontonummern erlaubten Zeichen.
    • HBCI_TRANSFER_USAGE_MAXLENGTH

      public static final int HBCI_TRANSFER_USAGE_MAXLENGTH
      Maximale Text-Laenge einer Verwendungszweck-Zeile.
    • HBCI_TRANSFER_USAGE_DB_MAXLENGTH

      public static final int HBCI_TRANSFER_USAGE_DB_MAXLENGTH
      Maximale Text-Laenge einer Verwendungszweck-Zeile.
    • HBCI_GVCODE_MAXLENGTH

      public static final int HBCI_GVCODE_MAXLENGTH
      Maximale Laenge eines GV-Code.
    • HBCI_ADDKEY_MAXLENGTH

      public static final int HBCI_ADDKEY_MAXLENGTH
      Maximale Laenge eines Textschluessels.
    • HBCI_TRANSFER_BZU_LENGTH

      public static final int HBCI_TRANSFER_BZU_LENGTH
      Laenge der Pruefziffern bei BZÜ-Ueberweisung.
    • HBCI_SEPATRANSFER_USAGE_MAXLENGTH

      public static final int HBCI_SEPATRANSFER_USAGE_MAXLENGTH
      Maximale Text-Laenge einer Verwendungszweck-Zeile bei SEPA-Auftraegen.
    • HBCI_TRANSFER_USAGE_MAXNUM

      public static final int HBCI_TRANSFER_USAGE_MAXNUM
      Maximale Anzahl von Verwendungszwecken.
    • HBCI_KTO_MAXLENGTH_SOFT

      public static final int HBCI_KTO_MAXLENGTH_SOFT
      Maximale Laenge einer Kontonummer. Sollte eigentlich 10-stellig sein, da die CRC-Pruefungen ohnehin nur bis dahin gelten. Aber fuer den Fall, dass auch mal noch VISA-Konten unterstuetzt werden, lass ich es vorerst mal auf 16 Stellen stehen und deklarieren es als "weiches" Limit.
    • HBCI_KTO_MAXLENGTH_HARD

      public static final int HBCI_KTO_MAXLENGTH_HARD
      Das harte Limit fuer Kontonummern, die CRC-Checks bestehen sollen
    • HBCI_IBAN_MAXLENGTH

      public static final int HBCI_IBAN_MAXLENGTH
      Maximale Laenge einer IBAN.
    • HBCI_BIC_MAXLENGTH

      public static final int HBCI_BIC_MAXLENGTH
      Maximale Laenge einer BIC.
    • HBCI_ID_MAXLENGTH

      public static final int HBCI_ID_MAXLENGTH
      Maximale Laenge des Datentyps "ID" in der HBCI-Spec.
    • HBCI_LAST_OF_MONTH

      public static final int HBCI_LAST_OF_MONTH
      Reservierter Tag fuer "Monatsletzten".
    • HBCI_BLZ_LENGTH

      public static final int HBCI_BLZ_LENGTH
      Laenge von Bankleitzahlen.
    • HBCI_TRANSFER_NAME_MAXLENGTH

      public static final int HBCI_TRANSFER_NAME_MAXLENGTH
      Maximale Text-Laenge fuer Namen.
    • CURRENCY_DEFAULT_DE

      public static final String CURRENCY_DEFAULT_DE
      Default-Waehrungs-Bezeichnung in Deutschland.
    • HBCI_PIN_MAXLENGTH

      public static final int HBCI_PIN_MAXLENGTH
      Maximale Laenge fuer PINs.
    • HBCI_PIN_MINLENGTH

      public static final int HBCI_PIN_MINLENGTH
      Minimale Laenge fuer PINs.
    • UMSATZ_DEFAULT_DAYS

      public static final int UMSATZ_DEFAULT_DAYS
      Default-Anzahl von anzuzeigenden Tagen in der Umsatz-Preview.
    • HBCI_SEPA_ENDTOENDID_MAXLENGTH

      public static final int HBCI_SEPA_ENDTOENDID_MAXLENGTH
      Maximale Laenge der EndtoEnd-ID bei SEPA.
    • HBCI_SEPA_PURPOSECODE_MAXLENGTH

      public static final int HBCI_SEPA_PURPOSECODE_MAXLENGTH
      Maximale Laenge des Purpose-Codes bei SEPA.
    • HBCI_SEPA_MANDATEID_MAXLENGTH

      public static final int HBCI_SEPA_MANDATEID_MAXLENGTH
      Maximale Laenge der Mandate-ID bei SEPA.
    • HBCI_SEPA_CREDITORID_MAXLENGTH

      public static final int HBCI_SEPA_CREDITORID_MAXLENGTH
      Maximale Laenge der Glaeubiger-ID bei SEPA.
    • HBCI_SEPA_PARSE_TAGS

      public static final boolean HBCI_SEPA_PARSE_TAGS
      SEPA-Tags parsen?
    • TEXT_REPLACEMENTS_SEPA

      public static final String[][] TEXT_REPLACEMENTS_SEPA
      Text-Replacements fuer SEPA. Die in SEPA nicht zulaessigen Zeichen "&*%$üöäÜÖÄß" werden ersetzt.
    • TEXT_REPLACEMENTS_UMSATZ

      public static final String[][] TEXT_REPLACEMENTS_UMSATZ
      Text-Replacements fuer Umsatz-Properties.
  • Method Details

    • clean

      public static final String clean(String text, String validChars)
      Bereinigt einen Text um die nicht erlaubten Zeichen.
      Parameters:
      text - zu bereinigender Text.
      validChars - Liste der erlaubten Zeichen.
      Returns:
      bereinigter Text.
    • replace

      public static final String replace(String text, String[][] replacements)
      Ersetzt im Text Strings entsprechend der Replacements.
      Parameters:
      text - der Text mit den zu ersetzenden Zeichen.
      replacements - die Ersetzungen.
      Returns:
      der Text mit den ersetzten Zeichen.
      See Also:
    • checkChars

      public static final void checkChars(String chars, String validChars) throws de.willuhn.util.ApplicationException
      Prueft die uebergebenen Strings auf Vorhandensein nicht erlaubter Zeichen.
      Parameters:
      chars - zu testende Zeichen.
      validChars - Liste der gueltigen Zeichen.
      Throws:
      de.willuhn.util.ApplicationException
    • checkLength

      public static final void checkLength(String chars, int maxLength) throws de.willuhn.util.ApplicationException
      BUGZILLA 232 Prueft den uebergebenen String auf korrekte Laenge. Hierbei wird auch geprueft, ob die Laenge nach dem HBCI-Escaping noch korrekt ist.
      Parameters:
      chars - zu testende Zeichen.
      maxLength - die maximale Laenge.
      Throws:
      de.willuhn.util.ApplicationException
    • group

      public static final String group(String s, int len, String sep)
      Gruppiert den String alle len Zeichen in Bloecke, die durch den String sep getrennt sind.
      Parameters:
      s - der zu gruppierende String.
      len - Anzahl der Zeichen pro Gruppe.
      sep - das Trennzeichen. Falls null, wird ein Leerzeichen als Trenner verwendet.
      Returns:
      der gruppierte String.
    • formatIban

      public static final String formatIban(String s)
      Gruppiert eine IBAN in Gruppen zu je 4 Zeichen und schreibt die ersten beiden Buchstaben (Laenderkennzeichen) gross.
      Parameters:
      s - die IBAN.
      Returns:
      die formatierte Darstellung.
    • getNameForBank

      public static final String getNameForBank(String bic)
      Ermittelt zu einer BIC oder BLZ den Namen der Bank.
      Parameters:
      bic - die BIC oder BLZ.
      Returns:
      der Name der Bank oder ein Leerstring, wenn nicht ermittelbar. Niemals NULL sondern hoechstens ein Leerstring.
    • getBankInfo

      public static org.kapott.hbci.manager.BankInfo getBankInfo(String blz)
      Liefert die Bankdaten fuer die Bank.
      Parameters:
      blz - die BLZ.
      Returns:
      die Bankdaten. NULL, wenn sie nicht gefunden wurden.
    • checkAccountCRC

      public static final boolean checkAccountCRC(String blz, String kontonummer)
      Prueft die Gueltigkeit der BLZ/Kontonummer-Kombi anhand von Pruefziffern.
      Parameters:
      blz -
      kontonummer -
      Returns:
      true, wenn die Kombi ok ist.
      See Also:
      • HBCIUtils.checkAccountCRC(java.lang.String, java.lang.String)
    • checkIBANCRC

      @Deprecated public static final boolean checkIBANCRC(String iban)
      Deprecated.
      Bitte checkIBAN(String) verwenden.
      Prueft die Gueltigkeit einer IBAN anhand von Pruefziffern.
      Parameters:
      iban - die IBAN.
      Returns:
      true, wenn die IBAN ok ist.
      See Also:
      • HBCIUtils.checkIBANCRC(java.lang.String)
    • checkBIC

      public static final String checkBIC(String bic) throws de.willuhn.util.ApplicationException
      Prueft die BIC und liefert eine ggf korrigierte Version zurueck.
      Parameters:
      bic - die zu pruefende BIC.
      Returns:
      die korrigierte BIC (ggf um "XXX" ergaenzt).
      Throws:
      de.willuhn.util.ApplicationException
    • checkCreditorIdCRC

      public static final boolean checkCreditorIdCRC(String creditorId)
      Prueft die Gueltigkeit einer Creditor-ID (Gläubiger-Identifikationsnummer) anhand von Pruefziffern.
      Parameters:
      creditorId - die Creditor-ID
      Returns:
      true, wenn die Creditor-ID ok ist.
      See Also:
      • HBCIUtils.checkCredtitorIdCRC(String)
    • getIBAN

      public static final de.jost_net.OBanToo.SEPA.IBAN getIBAN(String iban) throws de.willuhn.util.ApplicationException
      Erzeugt eine IBAN aus dem String und fuehrt diverse Pruefungen auf dieser durch.
      Parameters:
      iban - die IBAN.
      Returns:
      die gepruefte IBAN.
      Throws:
      de.willuhn.util.ApplicationException - die Fehlermeldung, wenn die IBAN nicht korrekt ist.
    • checkIBAN

      public static final void checkIBAN(String iban) throws de.willuhn.util.ApplicationException
      Prueft die IBAN auf Gueltigkeit.
      Parameters:
      iban - die IBAN.
      Throws:
      de.willuhn.util.ApplicationException - die Fehlermeldung, wenn die IBAN nicht korrekt ist.
    • getIBAN

      public static final de.jost_net.OBanToo.SEPA.IBAN getIBAN(String blz, String konto) throws de.willuhn.util.ApplicationException
      Erzeugt die IBAN aus der uebergebenen Bankverbindung.
      Parameters:
      blz - die BLZ.
      konto - die Kontonummer.
      Returns:
      die IBAN.
      Throws:
      de.willuhn.util.ApplicationException
    • getCause

      public static Throwable getCause(Throwable t)
      Laeuft den Stack der Exceptions bis zur urspruenglichen hoch und liefert sie zurueck. HBCI4Java verpackt Exceptions oft tief ineinander. Sie werden gefangen, in eine neue gepackt und wieder geworfen. Um nun die eigentliche Fehlermeldung zu kriegen, suchen wir hier nach der ersten. BUGZILLA 249
      Parameters:
      t - die Exception.
      Returns:
      die urspruengliche.
    • getCause

      public static Throwable getCause(Throwable t, Class<? extends Throwable> c)
      Laeuft den Stack der Exceptions bis zur urspruenglichen hoch und liefert sie zurueck. HBCI4Java verpackt Exceptions oft tief ineinander. Sie werden gefangen, in eine neue gepackt und wieder geworfen. Um nun die eigentliche Fehlermeldung zu kriegen, suchen wir hier nach der ersten. BUGZILLA 249
      Parameters:
      t - die Exception.
      c - optionale Angabe der gesuchten Exception. Wird sie nicht angegeben, liefert die Funktion die erste geworfene Exception im Stacktrace. Wird sie angegeben, liefert die Funktion die erste gefundene Exception dieser Klasse - insofern sie gefunden wird. Wird sie nicht gefunden, liefert die Funktion NULL.
      Returns:
      die urspruengliche.
    • startOfDay

      public static Date startOfDay(Date date)
      Deprecated.
      Bitte kuenftig direkt DateUtil.startOfDay(Date) verwenden.
      Resettet die Uhrzeit eines Datums.
      Parameters:
      date - das Datum.
      Returns:
      das neue Datum.
    • endOfDay

      public static Date endOfDay(Date date)
      Deprecated.
      Bitte kuenftig direkt DateUtil.endOfDay(Date) verwenden.
      Setzt die Uhrzeit eines Datums auf 23:59:59.999.
      Parameters:
      date - das Datum.
      Returns:
      das neue Datum.
    • getCustomerIDs

      public static Set<String> getCustomerIDs(org.kapott.hbci.passport.HBCIPassport passport)
      Ermittelt die Customer-IDs aus dem Passport.
      Parameters:
      passport - Passport.
      Returns:
      Liste der Customer-IDs.