com.codetaco.funnel.FunnelDataPublisher Maven / Gradle / Ivy
package com.codetaco.funnel;
import java.io.IOException;
import java.text.ParseException;
import com.codetaco.funnel.segment.SourceProxyRecord;
/**
*
* FunnelDataPublisher interface.
*
*
* @author Chris DeGreef [email protected]
*/
public interface FunnelDataPublisher
{
/**
*
* close.
*
*
* @throws java.lang.Exception if any.
*/
public void close() throws Exception;
/**
*
* getDuplicateCount.
*
*
* @return a long.
*/
public long getDuplicateCount();
/**
*
* getWriteCount.
*
*
* @return a long.
*/
public long getWriteCount();
/**
*
* openInput.
*
*
* @throws java.lang.Exception if any.
*/
public void openInput() throws Exception;
/**
*
* publish.
*
*
* @param item a {@link com.codetaco.funnel.segment.SourceProxyRecord}
* object.
* @param phase a long.
* @return a boolean.
* @throws java.lang.Exception if any.
*/
public boolean publish(SourceProxyRecord item, long phase) throws Exception;
/**
*
* reset.
*
*
* @throws java.io.IOException if any.
* @throws java.text.ParseException if any.
*/
public void reset() throws IOException, ParseException;
}