package net.javajigi.common.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;

public class EncodingInterceptor extends HandlerInterceptorAdapter {
	protected final Log logger = LogFactory.getLog(getClass());
	
	private static final String DEFAULT_ENCODING = "EUC-KR";

	private String encoding;

	public void setEncoding(String encoding) {
		this.encoding = encoding;
	}

	public boolean preHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler) throws Exception {
		if( logger.isDebugEnabled() ) {
			logger.debug("Now Encoding : " + encoding);
		}
		
        if (encoding != null) {
            request.setCharacterEncoding(encoding);
        } else {
        	request.setCharacterEncoding(DEFAULT_ENCODING);
        }
		
		return true;
	}
}
