ingo@230: package de.intevation.gnv.exports; ingo@230: ingo@230: import java.util.Collection; ingo@230: import java.util.List; ingo@230: ingo@230: import java.io.OutputStream; ingo@230: import java.io.IOException; ingo@230: import java.io.UnsupportedEncodingException; ingo@230: ingo@230: import de.intevation.gnv.transition.exception.TransitionException; ingo@230: ingo@230: /** ingo@230: * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) ingo@230: * @author Ingo Weinzierl (ingo.weinzierl@intevation.de) ingo@230: */ ingo@230: public interface Export { ingo@230: ingo@230: public interface Profile { ingo@230: String getHeader(int column); ingo@230: int numberColumns(); ingo@230: String toString(int column, String value); ingo@230: char getSeparator(); ingo@230: char getEscapeCharacter(); ingo@230: char getQuoteCharacter(); ingo@230: String getType(); ingo@230: String getEncoding(); ingo@230: } ingo@230: ingo@230: public void create( ingo@230: Profile profile, ingo@230: OutputStream outputStream, ingo@230: Collection result ingo@230: ) ingo@230: throws IOException, UnsupportedEncodingException, TransitionException; ingo@230: ingo@230: }