edu.bonn.xulu.plugin.io.grid.array
Class SingleGridFactory_GeoTiff

java.lang.Object
  extended by edu.bonn.xulu.io.AbstractFactory
      extended by edu.bonn.xulu.plugin.io.grid.array.SingleGridFactory_GeoTiff
All Implemented Interfaces:
ExportFactory, Factory, ImportFactory

public class SingleGridFactory_GeoTiff
extends AbstractFactory
implements ImportFactory, ExportFactory

Diese Factory importiert und exportiert Instanzen des Datentyps SingleGrid aus/in das GeoTiff-Format. Beim Import liefert die Factory ein auf Standard-Arrays basierendes Raster (WritableGridArray). Entsprechend koennen beim Export nur SingleGrids verarbeitet werden, die eine WritableGridArray-Instanz in ihrere Raster-Property besitzen.

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)

Field Summary
 
Fields inherited from class edu.bonn.xulu.io.AbstractFactory
name
 
Constructor Summary
SingleGridFactory_GeoTiff()
           
 
Method Summary
 void exportObject(Object grid, Object output)
          Exportiert eine Instanz von SingleGrid in eine GeoTiff-Datei.
 Class getExportDestinationType()
          Liefert den Objekt-Typ, den die Factory als Ziel zum Exportieren benoetigt.
 Class getImportSourceType()
          Liefert den Datentyp, den die Factory als Import-Quelle benoetigt.
 Class getImportType()
          Liefert den Datentyp, den die Factory erzeugt.
 SingleGrid importObject(Object input, XuluRegistry reg)
          Importiert eine Instanz von SingleGrid aus einer Datei im GeoTiff-Format.
 boolean isExportable(Class c)
          Prueft, ob ein Objekttyp exportiert werden kann.
 boolean isExportable(Object obj)
          Prueft, ob ein Objekt exportiert werden kann.
 
Methods inherited from class edu.bonn.xulu.io.AbstractFactory
checkExportDestinationObject, checkImportSourceObject, equals, equals, getInstantiationFactoryFromRegistry, getName, setName
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface edu.bonn.xulu.io.Factory
equals
 

Constructor Detail

SingleGridFactory_GeoTiff

public SingleGridFactory_GeoTiff()
Method Detail

getImportType

public Class getImportType()
Liefert den Datentyp, den die Factory erzeugt.

Specified by:
getImportType in interface ImportFactory
Returns:
immer SingleGrid.class

getImportSourceType

public Class getImportSourceType()
Liefert den Datentyp, den die Factory als Import-Quelle benoetigt.

Specified by:
getImportSourceType in interface ImportFactory
Returns:
immer File.class

importObject

public SingleGrid importObject(Object input,
                               XuluRegistry reg)
                        throws Exception
Importiert eine Instanz von SingleGrid aus einer Datei im GeoTiff-Format.

Specified by:
importObject in interface ImportFactory
Parameters:
input - Eingabe-Quelle (muss ein File sein!)
reg - Instanz der Xulu-Registry, ueber die eine Factory ermittelt wird, die eine Standard-Instanz von SingleGrid erzeugt, in die das Raster importiert wird
Throws:
UnsupportedOperationException - falls als Eingabe-Quelle keine Datei angegeben wird
Exception - wenn beim Importieren ein Fehler auftritt

isExportable

public boolean isExportable(Object obj)
Prueft, ob ein Objekt exportiert werden kann. Dies ist der Fall, wenn es sich um ein SingleGrid handelt, das ein WritableGridArray in seiner Raster-Eigenschaft besitzt.

Specified by:
isExportable in interface ExportFactory
Parameters:
obj - zu pruefendes Objekt

isExportable

public boolean isExportable(Class c)
Prueft, ob ein Objekttyp exportiert werden kann. Dies ist der Fall, wenn es sich um SingleGrid (oder eine Unterklasse) handelt.

Specified by:
isExportable in interface ExportFactory
Parameters:
c - zu pruefender Objekttyp

getExportDestinationType

public Class getExportDestinationType()
Liefert den Objekt-Typ, den die Factory als Ziel zum Exportieren benoetigt.

Specified by:
getExportDestinationType in interface ExportFactory
Returns:
immer File.class

exportObject

public void exportObject(Object grid,
                         Object output)
                  throws Exception
Exportiert eine Instanz von SingleGrid in eine GeoTiff-Datei.

Specified by:
exportObject in interface ExportFactory
Parameters:
grid - zu exportiertendes Raster (muss ein SingleGrid sein
output - Export-Ziel (muss ein File sein!)
Throws:
UnsupportedOperationException - falls als Export-Ziel keine Datei angegeben wird
IllegalArgumentException - falls es sich bei dem angegeben Raster nicht um ein SingleGrid handelt
Exception - wenn ein Fehler beim Export auftritt