view gnv-artifacts/src/main/java/de/intevation/gnv/exports/Export.java @ 234:a7fa7b404897

HorizontalProfile CSV-export uses an Exporter instead of writing csv on its own. gnv-artifacts/trunk@302 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 09 Nov 2009 09:52:18 +0000
parents 2ceb4bf51cba
children 75da91eca29f
line wrap: on
line source
package de.intevation.gnv.exports;

import java.util.Collection;
import java.util.List;

import java.io.OutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

import de.intevation.gnv.geobackend.base.Result;
import de.intevation.gnv.transition.exception.TransitionException;

/**
 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de)
 * @author Ingo Weinzierl (ingo.weinzierl@intevation.de)
 */
public interface Export {

    public interface Profile {
        String toString(int column, String value);
        char   getSeparator();
        char   getEscapeCharacter();
        char   getQuoteCharacter();
        String getType();
        String getEncoding();
    }

    public interface DataCollector {
        String[] getData(Result result)
        throws TransitionException;
    }

    public void create(
        Profile      profile,
        OutputStream outputStream, 
        Collection   result
    )
    throws IOException, UnsupportedEncodingException, TransitionException;

}

http://dive4elements.wald.intevation.org