Package de.willuhn.jameica.hbci.io

# Class XMLExporter

java.lang.Object
de.willuhn.jameica.hbci.io.XMLExporter

All Implemented Interfaces:
  `Exporter`, `IO`

Direct Known Subclasses:
  `XMLSammelTransferExporter`, `XMLSepaSammelTransferExporter`

public class XMLExporter extends Object implements Exporter
Exportiert Daten im XML-Format. Macht eigentlich nichts anderes, als die Objekte mit Java-Mitteln nach XML zu serialisieren.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected static final de.willuhn.util.I18N`
`i18n`

### Fields inherited from interface de.willuhn.jameica.hbci.io.Exporter

`SESSION`

## Constructor Summary

Constructors
Constructor
Description
`XMLExporter()`

## Method Summary

Modifier and Type
Method
Description
`void`
`doExport(Object[] objects, IOFormat format, OutputStream os, de.willuhn.util.ProgressMonitor monitor)`
Exportiert die genannten Objekte in den angegebenen OutputStream.
`IOFormat[]`
`getIOFormats(Class objectType)`
Liefert eine Liste der von diesem unterstuetzten Datei-Formate.
`String`
`getName()`
Liefert einen sprechenden Namen des Exporters/Importers.
`boolean`
`suppportsExtension(String ext)`
Liefert true, wenn der Exporter die angegebene Extension unterstuetzt.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### i18n

protected static final de.willuhn.util.I18N i18n

## Constructor Details

### XMLExporter

public XMLExporter()

## Method Details

### doExport

public void doExport(Object[] objects, IOFormat format, OutputStream os, de.willuhn.util.ProgressMonitor monitor) throws RemoteException, de.willuhn.util.ApplicationException
Description copied from interface: `Exporter`
Exportiert die genannten Objekte in den angegebenen OutputStream.

Specified by:
  `doExport` in interface `Exporter`
Parameters:
  `objects` - die zu exportierenden Objekte.
  `format` - das vom User ausgewaehlte Export-Format.
  `os` - der Ziel-Ausgabe-Stream. Der Exporter muss den OutputStream selbst schliessen!
  `monitor` - ein Monitor, an den der Exporter Ausgaben ueber seinen Bearbeitungszustand ausgeben kann.
Throws:
  `RemoteException`
  `de.willuhn.util.ApplicationException`

### getIOFormats

public IOFormat[] getIOFormats(Class objectType)
Description copied from interface: `IO`
Liefert eine Liste der von diesem unterstuetzten Datei-Formate.

Specified by:
  `getIOFormats` in interface `IO`
Parameters:
  `objectType` - Art der zu exportierenden/importierenden Objekte. Z.Bsb.: Umsatz.class oder SammellastBuchung.class. Abhaengig davon kann der Exporter/Importer eine unterschiedliche Liste von Dateiformaten liefern, die er zu dieser Objektart unterstuetzt.
Returns:
  Liste der Export-Formate.

### getName

public String getName()
Description copied from interface: `IO`
Liefert einen sprechenden Namen des Exporters/Importers. Z.Bsp. "Swift MT-940 Format".

Specified by:
  `getName` in interface `IO`
Returns:
  Name

### suppportsExtension

public boolean suppportsExtension(String ext)
Description copied from interface: `Exporter`
Liefert true, wenn der Exporter die angegebene Extension unterstuetzt.

Hintergrund: Im Export-Dialog koennen verschiedene Optionen (wie etwa "Spalte Saldo ausblenden") angezeigt werden. Manche Export-Formate unterstuetzen diese Option jedoch gar nicht, sodass sie ignoriert werden wuerde. Aus dem Grund kann der Exporter selbst mitteilen, ob er die angegebene Option unterstuetzt. Unterstuetzt er sie nicht, wir die Option automatisch deaktiviert.

Specified by:
  `suppportsExtension` in interface `Exporter`
Parameters:
  `ext` - der Name der Extension.
Returns:
  true, wenn er die Extension unterstuetzt.