Class FileExporter
- java.lang.Object
-
- org.openstreetmap.josm.gui.io.importexport.FileExporter
-
- All Implemented Interfaces:
MainLayerManager.ActiveLayerChangeListener
- Direct Known Subclasses:
GeoJSONExporter,GpxExporter,NoteExporter,OsmExporter,ValidatorErrorExporter,WMSLayerExporter
public abstract class FileExporter extends java.lang.Object implements MainLayerManager.ActiveLayerChangeListener
Abstract base class for file exporters - IO classes that save layers to a file.
-
-
Field Summary
Fields Modifier and Type Field Description private booleancanceledprivate booleanenabledExtensionFileFilterfilterthe ExtensionFileFilter filter used by this exporter
-
Constructor Summary
Constructors Modifier Constructor Description protectedFileExporter(ExtensionFileFilter filter)Constructs a newFileExporter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanacceptFile(java.io.File pathname, Layer layer)Check if this exporter can export a certain layer to a certain file.voidactiveOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)Called whenever the active or edit layer changed.voidexportData(java.io.File file, Layer layer)Execute the data export.voidexportDataQuiet(java.io.File file, Layer layer)Execute the data export without prompting the user.booleanisCanceled()Determines if this exporter has been canceled during export.booleanisEnabled()Returns the enabled state of thisFileExporter.voidsetCanceled(boolean canceled)Marks this exporter as canceled.voidsetEnabled(boolean enabled)Sets the enabled state of theFileExporter.
-
-
-
Field Detail
-
filter
public final ExtensionFileFilter filter
the ExtensionFileFilter filter used by this exporter
-
enabled
private boolean enabled
-
canceled
private boolean canceled
-
-
Constructor Detail
-
FileExporter
protected FileExporter(ExtensionFileFilter filter)
Constructs a newFileExporter.- Parameters:
filter- The extension file filter
-
-
Method Detail
-
acceptFile
public boolean acceptFile(java.io.File pathname, Layer layer)
Check if this exporter can export a certain layer to a certain file. Most exporters support just a single layer type.- Parameters:
pathname- the target file name (check file extension using thefilterlayer- the layer requested for export- Returns:
- true, if the exporter can handle the layer and filename is okay
-
exportData
public void exportData(java.io.File file, Layer layer) throws java.io.IOException
Execute the data export. (To be overridden by subclasses.)- Parameters:
file- target filelayer- the layer to export- Throws:
java.io.IOException- in case of an IO error
-
exportDataQuiet
public void exportDataQuiet(java.io.File file, Layer layer) throws java.io.IOException
Execute the data export without prompting the user. (To be overridden by subclasses.)- Parameters:
file- target filelayer- the layer to export- Throws:
java.io.IOException- in case of an IO error- Since:
- 15496
-
isEnabled
public final boolean isEnabled()
Returns the enabled state of thisFileExporter. When enabled, it is listed and usable in "File → Save" dialogs.- Returns:
- true if this
FileExporteris enabled - Since:
- 5459
-
setEnabled
public final void setEnabled(boolean enabled)
Sets the enabled state of theFileExporter. When enabled, it is listed and usable in "File → Save" dialogs.- Parameters:
enabled- true to enable thisFileExporter, false to disable it- Since:
- 5459
-
activeOrEditLayerChanged
public void activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Description copied from interface:MainLayerManager.ActiveLayerChangeListenerCalled whenever the active or edit layer changed.You can be sure that this layer is still contained in this set.
Listeners are called in the EDT thread and you can manipulate the layer manager in the current thread.
- Specified by:
activeOrEditLayerChangedin interfaceMainLayerManager.ActiveLayerChangeListener- Parameters:
e- The change event.
-
isCanceled
public final boolean isCanceled()
Determines if this exporter has been canceled during export.- Returns:
- true if this
FileExporterhas been canceled - Since:
- 6815
-
setCanceled
public final void setCanceled(boolean canceled)
Marks this exporter as canceled.- Parameters:
canceled- true to mark this exporter as canceled,falseotherwise- Since:
- 6815
-
-