/*
 * 作成日： 2004/08/30
 */
package org.seasar.tapestry.junk;

import org.apache.tapestry.IEngine;
import org.apache.tapestry.html.BasePage;
import org.seasar.framework.container.S2Container;
import org.seasar.framework.container.factory.SingletonS2ContainerFactory;
import org.seasar.tapestry.pageinjection.IInjection;

/**
 * これを継承したページファイルに対してオートインジェクションを行う。
 * 
 * @author maruo_syunsuke
 */
public class InjectionPage extends BasePage {
/*
	public String getOutputEncoding() {
		return "Shift-JIS" ;
	}
	public IMarkupWriter getResponseWriter(OutputStream out) {
		return new HTMLWriter("text/html", this.getOutputEncoding(), out);
	}
*/
	/**
	 * オートインジェクションを行う
	 */
	public void attach(IEngine value) {
		super.attach(value);
		S2Container container = SingletonS2ContainerFactory.getContainer();
		if( container.hasComponentDef(IInjection.class)) {
			IInjection injection = (IInjection)container.getComponent(IInjection.class);
			injection.injection(this);
		}
	}
}