Package de.willuhn.jameica.hbci.server
Class VerwendungszweckUtil
java.lang.Object
de.willuhn.jameica.hbci.server.VerwendungszweckUtil
Hilfsklasse zum Mergen und Splitten der erweiterten Verwendungszwecke.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
apply
(HibiscusTransfer t, String[] lines) Verteilt die angegebenen Verwendungszweck-Zeilen auf zweck, zweck2 und zweck3.static void
applyCamt
(HibiscusTransfer t, List<String> lines) Verteilt die angegebenen Verwendungszweck-Zeilen auf zweck, zweck2 und zweck3.static void
checkMaxUsage
(HibiscusTransfer transfer) Prueft, ob die Anzahl der Verwendungszwecke nicht die Maximal-Anzahl aus den BPD uebersteigt.static void
checkMaxUsage
(SammelTransferBuchung buchung) Prueft, ob die Anzahl der Verwendungszwecke nicht die Maximal-Anzahl aus den BPD uebersteigt.static final int
getMaxUsageUeb
(Konto konto) Liefert die maximale Anzahl von Verwendungszwecken fuer Ueberweisungen.static String
getTag
(Transfer t, VerwendungszweckUtil.Tag tag) Liefert den Wert des angegebenen Tag oder NULL, wenn er nicht gefunden wurde.static String
Merget die Verwendungszweck-Zeilen zu einem String zusammen.static Map<VerwendungszweckUtil.Tag,
String> Parst die SEPA-Tags aus den Verwendungszwecken des Auftrages.static String[]
Zerlegt einen langen Verwendungszweck in 27 Zeichen lange Haeppchen.static Map<VerwendungszweckUtil.Tag,
String> Parst die SEPA-Tags aus den Verwendungszweck-Zeilen.static String[]
Bricht die Verwendungszweck-Zeilen auf $limit Zeichen lange Haeppchen neu um.static String[]
Splittet die Verwendungszweck-Zeilen am Zeilenumbruch.static String[]
Liefert eine bereinigte Liste der Verwendungszweck-Zeilen des Auftrages.static String
Merget die Verwendungszweck-Zeilen des Auftrages zu einer Zeile zusammen.static String
Merget die Verwendungszweck-Zeilen des Auftrages zu einer Zeile zusammen.
-
Constructor Details
-
VerwendungszweckUtil
public VerwendungszweckUtil()
-
-
Method Details
-
split
Splittet die Verwendungszweck-Zeilen am Zeilenumbruch.- Parameters:
lines
- die Zeilen.- Returns:
- Ein Array mit den Zeilen. Niemals NULL sondern hoechstens ein leeres Array.
-
parse
Zerlegt einen langen Verwendungszweck in 27 Zeichen lange Haeppchen.- Parameters:
line
- die zu parsende Zeile.- Returns:
- die 27 Zeichen langen Schnippsel.
-
getTag
Liefert den Wert des angegebenen Tag oder NULL, wenn er nicht gefunden wurde.- Parameters:
t
- der Auftrag.tag
- das Tag.- Returns:
- der Wert des Tag oder NULL, wenn es nicht gefunden wurde.
- Throws:
RemoteException
-
parse
Parst die SEPA-Tags aus den Verwendungszwecken des Auftrages.- Parameters:
t
-- Returns:
- Map mit den geparsten Infos. Niemals NULL sondern hoechstens eine leere Map.
- Throws:
RemoteException
-
parse
Parst die SEPA-Tags aus den Verwendungszweck-Zeilen.- Parameters:
lines
- die Verwendungszweck-Zeilen.- Returns:
- Map mit den geparsten Infos. Niemals NULL sondern hoechstens eine leere Map.
- Throws:
RemoteException
-
apply
Verteilt die angegebenen Verwendungszweck-Zeilen auf zweck, zweck2 und zweck3.- Parameters:
t
- der Auftrag, in dem die Verwendungszweck-Zeilen gespeichert werden sollen.lines
- die zu uebernehmenden Zeilen.- Throws:
RemoteException
-
applyCamt
Verteilt die angegebenen Verwendungszweck-Zeilen auf zweck, zweck2 und zweck3.- Parameters:
t
- der Auftrag, in dem die Verwendungszweck-Zeilen gespeichert werden sollen.lines
- die zu uebernehmenden Zeilen.- Throws:
RemoteException
-
rewrap
Bricht die Verwendungszweck-Zeilen auf $limit Zeichen lange Haeppchen neu um. Jedoch nur, wenn wirklich Zeilen enthalten sind, die laenger sind. Andernfalls wird nichts umgebrochen.- Parameters:
limit
- das Zeichen-Limit pro Zeile.lines
- die Zeilen.- Returns:
- die neu umgebrochenen Zeilen.
-
merge
Merget die Verwendungszweck-Zeilen zu einem String zusammen. Die Zeilen sind mit Zeilenumbruch versehen.- Parameters:
lines
- die Zeilen.- Returns:
- die gemergten Zeilen. Wird NULL oder ein leeres Array uebergeben, liefert die Funktion NULL.
-
toArray
Liefert eine bereinigte Liste der Verwendungszweck-Zeilen des Auftrages.- Parameters:
t
- der Auftrag.- Returns:
- bereinigte Liste der Verwendungszweck-Zeilen des Auftrages.
- Throws:
RemoteException
-
toString
Merget die Verwendungszweck-Zeilen des Auftrages zu einer Zeile zusammen. Als Trennzeichen fuer die Zeilen wird " " (ein Leerzeichen) verwendet.- Parameters:
t
- der Auftrag.- Returns:
- der String mit einer Zeile, die alle Verwendungszwecke enthaelt.
- Throws:
RemoteException
-
toString
Merget die Verwendungszweck-Zeilen des Auftrages zu einer Zeile zusammen.- Parameters:
t
- der Auftrag.sep
- das zu verwendende Trennzeichen fuer die Zeilen. Wenn es null ist, wird " " (ein Leerzeichen) verwendet.- Returns:
- der String mit einer Zeile, die alle Verwendungszwecke enthaelt.
- Throws:
RemoteException
-
getMaxUsageUeb
Liefert die maximale Anzahl von Verwendungszwecken fuer Ueberweisungen.- Parameters:
konto
- das Konto- Returns:
- Maximale Anzahl der Zeilen.
- Throws:
RemoteException
-
checkMaxUsage
public static void checkMaxUsage(HibiscusTransfer transfer) throws RemoteException, de.willuhn.util.ApplicationException Prueft, ob die Anzahl der Verwendungszwecke nicht die Maximal-Anzahl aus den BPD uebersteigt.- Parameters:
transfer
- der zu testende Transfer.- Throws:
RemoteException
de.willuhn.util.ApplicationException
-
checkMaxUsage
public static void checkMaxUsage(SammelTransferBuchung buchung) throws RemoteException, de.willuhn.util.ApplicationException Prueft, ob die Anzahl der Verwendungszwecke nicht die Maximal-Anzahl aus den BPD uebersteigt.- Parameters:
buchung
- die zu testende Buchung.- Throws:
RemoteException
de.willuhn.util.ApplicationException
-