package org.logical_paradox.rss.rcm.df;

/**
 * データフィルタ
 * 
 * @author satoshi akabane@logical-paradox.org
 * @version $Revision: 1.2 $
 */
public interface DataFilter {
	/**
	 * URLをフィルタリングする
	 * @param url フィルタされるURL
	 * @return フィルタされたURL
	 */
	public String filterURL(String url) throws Exception;
	/**
	 * コンテンツを圧縮する
	 * @param contents 圧縮するコンテンツ
	 * @return 圧縮されたコンテンツのバイト列
	 */
	public byte[] compressContents(byte[] contents) throws Exception;
	/**
	 * 圧縮されたコンテンツを復元する
	 * 伸張されて文字列として返る
	 * 
	 * @param b 圧縮されたコンテンツ
	 * @return 伸張されたコンテンツ
	 */
	public byte[] decompressContents(byte[] b) throws Exception;
}
