package com.revolsys.record.io.format.esri.gdb.xml; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.nio.charset.Charset; import com.revolsys.geometry.cs.epsg.EpsgCoordinateSystems; import com.revolsys.io.AbstractIoFactoryWithCoordinateSystem; import com.revolsys.record.io.RecordWriter; import com.revolsys.record.io.RecordWriterFactory; import com.revolsys.record.schema.RecordDefinition; public class EsriGeodatabaseXmlRecordWriterFactory extends AbstractIoFactoryWithCoordinateSystem implements RecordWriterFactory { public EsriGeodatabaseXmlRecordWriterFactory() { super(EsriGeodatabaseXmlConstants.FORMAT_DESCRIPTION); addMediaTypeAndFileExtension(EsriGeodatabaseXmlConstants.MEDIA_TYPE, EsriGeodatabaseXmlConstants.FILE_EXTENSION); setCoordinateSystems(EpsgCoordinateSystems.getCoordinateSystem(4326)); } @Override public RecordWriter newRecordWriter(final String baseName, final RecordDefinition recordDefinition, final OutputStream outputStream, final Charset charset) { final OutputStreamWriter writer = new OutputStreamWriter(outputStream, charset); return new EsriGeodatabaseXmlRecordWriter(recordDefinition, writer); } }