/**
 * LOGICAL-PARADOX.ORG
 * Copyright (C)2004 satoshi akabane(akabane@logical-paradox.org)
 *
 */
package org.logical_paradox.phalanx.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

/**
 * エンコーディングフィルタ
 * @author satoshi akabane@logical-paradox.org
 * @version $Revision: 1.2 $
 */
public class StandardEncodingFilter implements Filter {
	/** フィルタエンコーディング */
	private String encoding;

	/**
	 * フィルタをかける．
	 * @param req リクエスト
	 * @param res レスポンス
	 * @param chain フィルタチェーン
	 * @throws IOException 通信エラー
	 * @throws ServletException その他のサーブレット実行中エラー
	 */
	public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
		// リクエストとレスポンスにエンコーディングを設定する
//		req.setCharacterEncoding(encoding);
//		res.setCharacterEncoding(encoding);

		// フィルタを設定する
		chain.doFilter(req, res);
	}
	/**
	 * フィルタを初期化する
	 * @param config フィルタのコンフィグレーション
	 * @throws ServletException その他のサーブレット実行中エラー
	 */
	public void init(FilterConfig config) throws ServletException {
		encoding = config.getInitParameter("encoding");
	}
	/**
	 * フィルタ破棄．
	 */
	public void destroy() {
	}
}
