Package de.willuhn.jameica.hbci.io

# Class VelocityExporter

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

All Implemented Interfaces:
  `Exporter`, `IO`

public class VelocityExporter extends Object implements Exporter
Implementierung eines Exporters, welcher das Velocity-Framework nutzt.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`class`
`VelocityExporter.DateUtil`
Hilfsklasse fuer weitere Datumsfunktionen.
`class`
`VelocityExporter.Filter`
Hilfsklasse zum Escapen von Strings in der CSV-Datei.
`class`
`VelocityExporter.VelocityFormat`
Hilfsklase, die das IOFormat implementiert.

## Field Summary

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

`SESSION`

## Constructor Summary

Constructors
Constructor
Description
`VelocityExporter()`

## 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 type)`
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`

## Constructor Details

### VelocityExporter

public VelocityExporter()

## 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`

### 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

### getIOFormats

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

Specified by:
  `getIOFormats` in interface `IO`
Parameters:
  `type` - 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.

### 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.