Package org.kapott.hbci.GV
Class SepaUtil
- java.lang.Object
-
- org.kapott.hbci.GV.SepaUtil
-
public class SepaUtil extends java.lang.Object
Ein paar statische Hilfs-Methoden fuer die Generierung der SEPA-Nachrichten.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DATE_FORMAT
static java.lang.String
DATE_UNDEFINED
Das Platzhalter-Datum, welches verwendet werden soll, wenn kein Datum angegeben ist.static java.lang.String
DATETIME_FORMAT
private static java.util.regex.Pattern
INDEX_PATTERN
-
Constructor Summary
Constructors Constructor Description SepaUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static javax.xml.datatype.XMLGregorianCalendar
createCalendar(java.lang.String isoDate)
Erzeugt ein neues XMLCalender-Objekt.static java.lang.String
format(java.math.BigDecimal value)
Formatiert die Dezimalzahl als String.static java.lang.String
format(javax.xml.datatype.XMLGregorianCalendar cal, java.lang.String format)
Formatiert den XML-Kalender im angegebenen Format.static java.lang.String
getProperty(java.util.Properties props, java.lang.String name, java.lang.String defaultValue)
Liefert den Wert des Properties oder den Default-Wert.static java.lang.String
insertIndex(java.lang.String key, java.lang.Integer index)
Fuegt einen Index in den Property-Key ein.static java.lang.Integer
maxIndex(java.util.Properties properties)
Ermittelt den maximalen Index aller indizierten Properties.static java.math.BigDecimal
sumBtgValue(java.util.Properties sepaParams, java.lang.Integer max)
Liefert die Summe der Beträge aller Transaktionen.static Value
sumBtgValueObject(java.util.Properties properties)
Liefert ein Value-Objekt mit den Summen des Auftrages.static java.util.Date
toDate(javax.xml.datatype.XMLGregorianCalendar cal)
Liefert ein Date-Objekt fuer den Kalender.
-
-
-
Field Detail
-
DATETIME_FORMAT
public static final java.lang.String DATETIME_FORMAT
- See Also:
- Constant Field Values
-
DATE_FORMAT
public static final java.lang.String DATE_FORMAT
- See Also:
- Constant Field Values
-
DATE_UNDEFINED
public static final java.lang.String DATE_UNDEFINED
Das Platzhalter-Datum, welches verwendet werden soll, wenn kein Datum angegeben ist.- See Also:
- Constant Field Values
-
INDEX_PATTERN
private static final java.util.regex.Pattern INDEX_PATTERN
-
-
Method Detail
-
createCalendar
public static javax.xml.datatype.XMLGregorianCalendar createCalendar(java.lang.String isoDate) throws java.lang.Exception
Erzeugt ein neues XMLCalender-Objekt.- Parameters:
isoDate
- optional. Das zu verwendende Datum. Wird es weggelassen, dann wird das aktuelle Datum (mit Uhrzeit) verwendet.- Returns:
- das XML-Calendar-Objekt.
- Throws:
java.lang.Exception
-
format
public static java.lang.String format(javax.xml.datatype.XMLGregorianCalendar cal, java.lang.String format)
Formatiert den XML-Kalender im angegebenen Format.- Parameters:
cal
- der Kalender.format
- das zu verwendende Format. Fuer Beispiele sieheDATE_FORMAT
DATETIME_FORMAT
Wenn keines angegeben ist, wird per DefaultDATE_FORMAT
verwendet.- Returns:
- die String das formatierte Datum.
-
toDate
public static java.util.Date toDate(javax.xml.datatype.XMLGregorianCalendar cal)
Liefert ein Date-Objekt fuer den Kalender.- Parameters:
cal
- der Kalender.- Returns:
- das Date-Objekt.
-
format
public static java.lang.String format(java.math.BigDecimal value)
Formatiert die Dezimalzahl als String. Zur Zeit macht die Funktion lediglich ein "toString",- Parameters:
value
- der zu formatierende Betrag.- Returns:
- der formatierte Betrag.
-
maxIndex
public static java.lang.Integer maxIndex(java.util.Properties properties)
Ermittelt den maximalen Index aller indizierten Properties. Nicht indizierte Properties werden ignoriert.- Parameters:
properties
- die Properties, mit denen gearbeitet werden soll- Returns:
- Maximaler Index, oder
null
, wenn keine indizierten Properties gefunden wurden
-
sumBtgValue
public static java.math.BigDecimal sumBtgValue(java.util.Properties sepaParams, java.lang.Integer max)
Liefert die Summe der Beträge aller Transaktionen. Bei einer Einzeltransaktion wird der Betrag zurückgeliefert. Mehrfachtransaktionen müssen die gleiche Währung verwenden, da eine Summenbildung sonst nicht möglich ist.- Parameters:
sepaParams
- die Properties, mit denen gearbeitet werden sollmax
- Maximaler Index, odernull
für Einzeltransaktionen- Returns:
- Summe aller Beträge
-
insertIndex
public static java.lang.String insertIndex(java.lang.String key, java.lang.Integer index)
Fuegt einen Index in den Property-Key ein. Wurde kein Index angegeben, wird der Key unveraendert zurueckgeliefert.- Parameters:
key
- Key, der mit einem Index ergaenzt werden sollindex
- Index odernull
, wenn kein Index gesetzt werden soll- Returns:
- Key mit Index
-
sumBtgValueObject
public static Value sumBtgValueObject(java.util.Properties properties)
Liefert ein Value-Objekt mit den Summen des Auftrages.- Parameters:
properties
- Auftrags-Properties.- Returns:
- das Value-Objekt mit der Summe.
-
getProperty
public static java.lang.String getProperty(java.util.Properties props, java.lang.String name, java.lang.String defaultValue)
Liefert den Wert des Properties oder den Default-Wert. Der Default-Wert wird nicht nur bei NULL verwendet sondern auch bei Leerstring.- Parameters:
props
- die Properties.name
- der Name des Properties.defaultValue
- der Default-Wert.- Returns:
- der Wert.
-
-