/////////////////////////////////////////////////////////////////
//Copyright (C) 2005 NTT CORPORATION.
//
//	Velocity Tool ベースクラス
//
//		変更履歴
//			2005.02.19  新規作成  村上 靖征
//
//	機能
//
//	このクラスはVelocity Tool の基底クラスです。
//
////////////////////////////////////////////////////////////////

package jp.co.ntt.lms.xmf.tools;

import org.apache.velocity.context.Context;
import org.apache.velocity.tools.view.tools.ViewTool;

/**
 * Velocity Tool 基底クラス
 * 
 * このクラスはVelocity Tool基底クラスです。 <BR>
 * Velocity Context にアクセスするためには、このクラスを基底クラスに設定する <BR>
 * 必要があります。
 * 
 * @author 村上 靖征
 * @version 1.0
 */
public class ToolBase implements ViewTool
{

	protected Context context;

	/*
	 * init() メソッドのオーバーライド実装 (非 Javadoc)
	 * 
	 * @see org.apache.velocity.tools.view.tools.ViewTool#init(java.lang.Object)
	 */
	public void init(Object arg0)
	{
		context = (Context) arg0;
	}

	/**
	 * Velocity コンテキストに設定されているオブジェクトを取得する。
	 * 
	 * @param key キー
	 * @return オブジェクト
	 */
	protected Object getContextObject(String key)
	{
		if (context.containsKey(key))
		{
			return context.get(key);
		}
		else
		{
			return null;
		}
	}

	/**
	 * Velocity コンテキストに設定されている文字列を取得する。
	 * 
	 * @param key キー
	 * @return 文字列
	 */
	protected String getContextString(String key)
	{
		if (context.containsKey(key))
		{
			return (String) context.get(key);
		}
		else
		{
			return null;
		}
	}
}