package jp.cssj.cti.helpers;

/**
 * @author <a href="mailto:miyabe at gnn.co.jp">MIYABE Tatsuhiko </a>
 * @version $Id: ProgressListener.java,v 1.1 2005/03/26 10:22:30 harumanx Exp $
 */
public interface ProgressListener {
	/**
	 * 処理されたソースドキュメントのバイト数を受け取ります。
	 * 
	 * @param srcPos
	 */
	public void progress(long srcPos);

	/**
	 * 出力結果の長さを要求する場合はtrueを返します。
	 * 
	 * @return
	 */
	public boolean requiresContentLength();

	/**
	 * 出力結果の長さを受け取ります。
	 * 
	 * requiredContentLengthがtrueを返す場合は、変換後のデータを出力する前に必ず呼び出されます。
	 * 
	 * @param contentLength
	 */
	public void contentLength(long contentLength);
}