package com.revolsys.io.map; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.Writer; import java.nio.charset.Charset; import com.revolsys.io.FileIoFactory; import com.revolsys.io.FileUtil; import com.revolsys.spring.resource.Resource; public interface MapWriterFactory extends FileIoFactory { default MapWriter newMapWriter(final Object source) { final Resource resource = Resource.getResource(source); final Writer writer = resource.newWriter(); return newMapWriter(writer); } default MapWriter newMapWriter(final OutputStream out) { final Writer writer = FileUtil.newUtf8Writer(out); return newMapWriter(writer); } default MapWriter newMapWriter(final OutputStream out, final Charset charset) { final OutputStreamWriter writer = new OutputStreamWriter(out, charset); return newMapWriter(writer); } MapWriter newMapWriter(final Writer out); }