Interface ISEPAGenerator<T>

Type Parameters:
T - Die konkrete Struktur, aus der die Daten gelesen werden.
All Known Implementing Classes:
AbstractSEPAGenerator, GenKUmsAllCamt05200107, GenLastSEPA00800101, GenLastSEPA00800102, GenLastSEPA00800108, GenLastSEPA00800110, GenLastSEPA00800201, GenLastSEPA00800202, GenLastSEPA00800302, GenUebSEPA00100102, GenUebSEPA00100103, GenUebSEPA00100109, GenUebSEPA00100111, GenUebSEPA00100202, GenUebSEPA00100203, GenUebSEPA00100303

public interface ISEPAGenerator<T>
Basis-Interface fuer alle SEPA-Job-Generatoren.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Das verwendete Encoding.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    generate(T source, OutputStream os, boolean validate)
    Schreibt den Job als SEPA-XML in den Stream.
    Liefert die SEPA-Version des Generators.
  • Field Details

    • ENCODING

      static final String ENCODING
      Das verwendete Encoding. UTF-8. Siehe Siehe http://www.onlinebanking-forum.de/forum/topic.php?p=107420#real107420
      See Also:
  • Method Details

    • generate

      void generate(T source, OutputStream os, boolean validate) throws Exception
      Schreibt den Job als SEPA-XML in den Stream.
      Parameters:
      source - die zu generierenden Daten. Urspruenglich wurde hier direkt eine Instanz von "AbstractSEPAGV" uebergeben und dort job.getSEPAParam($targetname(ohne "sepa.") aufgerufen. Das hatte jedoch den Nachteil, dass fuer die Instanziierung eines "AbstractSEPAGV" (welche von "HBCIJobImpl" abgeleitet ist) ein HBCIHandler erforderlicher. Der erfordert jedoch einen initialisierten und geoeffneten Passport, was wiederrum bedeutet, dass das SEPA-XML nur innerhalb eines HBCI-Dialogs erzeugt werden kann. Schon allein zur besseren Testbarkeit sollte sich das XML jedoch auch ohne HBCI-Initialisierung erstellen lassen. Daher werden hier nur noch die Properties uebergeben aus denen sich der SEPA-Generator dann anhand der Parameternamen bedient.
      os - der Stream.
      validate - true, wenn das erzeugte XML gegen das PAIN-Schema validiert werden soll.
      Throws:
      Exception
    • getSepaVersion

      SepaVersion getSepaVersion()
      Liefert die SEPA-Version des Generators. Wenn die Methode implementiert wurde und eine "vollqualifizierte" SEPA-Version zurueckliefert, in der sowohl URN als auch FILE gesetzt sind, dann wird die Schema-Location dem Marshaller mittels "Marshaller.JAXB_SCHEMA_LOCATION" uebergeben, was bewirkt, dass im Root-Element das Attribute "xsi:schemaLocation" gesetzt wird. Ausserdem kann dann die Schema-Validierung aktiviert werden.
      Returns:
      die zu deklarierende Schema-Location oder NULL, falls nichts angegeben werden soll.