package jp.sourceforge.cfneo.at4ie.api;

/**
 * ブラウザへの操作をWrapする抽象クラス。
 * @author imaitakafumi
 *
 */
public abstract class Invoker {

	private TargetBrowser browser;
	private Context context;

	/**
	 * コンストラクタ。
	 * @param context
	 * @param invokerFactory
	 * @param browser
	 */
	public Invoker(Context context, TargetBrowser browser) {
		this.context = context;
		this.browser = browser;
	}

	/**
	 * 実行する。
	 * @param testCase
	 * @throws AT4IEAssertException
	 */
	abstract public void invoke(TestCase testCase) throws AT4IEAssertException;

	/**
	 * 対象となるブラウザを取得する。
	 * @return
	 */
	protected TargetBrowser getBrowser() {
		return browser;
	}
	/**
	 * contextを取得する。
	 * @return
	 */
	protected Context getContext() {
		return context;
	}

}
