//===========================================================================
// package
//===========================================================================
package jp.gr.java_conf.bugslife.bug;

//===========================================================================
// import
//===========================================================================
// Java core API
import java.util.*;
import java.text.*;
import org.apache.commons.logging.*;

// DB API
import jp.gr.java_conf.bugslife.db.*;

// Util API
import jp.gr.java_conf.bugslife.util.*;
import jp.gr.java_conf.bugslife.user.*;
//import jp.gr.java_conf.bugslife.system.*;


/**
 *<PRE>
 * 
 * FullBugクラス
 * 
 *</PRE>
 * @version	0.0, 2001/09/10
 * @author	鰐川　正寛
 */
//===========================================================================
public class FullBug extends Bug
{
//===========================================================================
// attributes
//===========================================================================
	/** */
	private String m_locationString = null;
	private String m_functionNameString = null;
	private String m_subsystemString = null;
	private String m_browserString = null;
	private String m_osString = null;
	private String m_appVersionString = null;
	private String m_dbVersionString = null;
	private String m_htmlVersionString = null;
	private String m_specVersionString = null;
	private String m_issuerName = null;
	private String m_severityString = null;
	private String m_priorityString = null;
	private String m_resolutionString = null;
	private String m_milestoneString = null;
	private String m_autherName = null;
	private String m_errorTypeString = null;
	private String m_errorCauseString = null;
	private String m_issuPnoString = null;
	private String m_trainPnoString = null;
	private String m_shouldFindPnoString = null;
	private String m_errorDelayReasonString = null;
	private String m_analystName = null;
	private String m_updaterName = null;
	private String m_comfirmerName = null;
	private String m_updateUnoName = null;
	/**
	 * Log
	 */
	private Log log = LogFactory.getLog(this.getClass().getName());
//===========================================================================
// methods
//===========================================================================
	/**
	 *	デフォルトコンストラクタ
	 */
	public FullBug()
	{
		
	}
//======================================
// Property
//======================================
	/**
	 * locationStringの取得
	 * 
	 * @return locationString
	 */
	public String getLocationString()
	{
		return m_locationString;
	}
	/**
	 * locationStringのセット
	 * 
	 * @param locationString locationString
	 */
	public void setLocationString(String locationString)
	{
		m_locationString = locationString;
	}
	/**
	 * subsystemStringの取得
	 * 
	 * @return subsystemString
	 */
	public String getSubsystemString()
	{
		return m_subsystemString;
	}
	/**
	 * subsystemStringのセット
	 * 
	 * @param subsystemString subsystemString
	 */
	public void setSubsystemString(String subsystemString)
	{
		m_subsystemString = subsystemString;
	}
	/**
	 * functionNameStringの取得
	 * 
	 * @return functionNameString
	 */
	public String getFunctionNameString()
	{
		return m_functionNameString;
	}
	/**
	 * functionNameStringのセット
	 * 
	 * @param functionNameString functionNameString
	 */
	public void setFunctionNameString(String functionNameString)
	{
		m_functionNameString = functionNameString;
	}
	/**
	 * browserStringの取得
	 * 
	 * @return browserString
	 */
	public String getBrowserString()
	{
		return m_browserString;
	}
	/**
	 * browserStringのセット
	 * 
	 * @param browserString browserString
	 */
	public void setBrowserString(String browserString)
	{
		m_browserString = browserString;
	}
	/**
	 * osStringの取得
	 * 
	 * @return osString
	 */
	public String getOsString()
	{
		return m_osString;
	}
	/**
	 * osStringのセット
	 * 
	 * @param osString osString
	 */
	public void setOsString(String osString)
	{
		m_osString = osString;
	}
	/**
	 * appVersionStringの取得
	 * 
	 * @return appVersionString
	 */
	public String getAppVersionString()
	{
		return m_appVersionString;
	}
	/**
	 * appVersionStringのセット
	 * 
	 * @param appVersionString appVersionString
	 */
	public void setAppVersionString(String appVersionString)
	{
		m_appVersionString = appVersionString;
	}
	/**
	 * dbVersionStringの取得
	 * 
	 * @return dbVersionString
	 */
	public String getDbVersionString()
	{
		return m_dbVersionString;
	}
	/**
	 * dbVersionStringのセット
	 * 
	 * @param dbVersionString dbVersionString
	 */
	public void setDbVersionString(String dbVersionString)
	{
		m_dbVersionString = dbVersionString;
	}
	/**
	 * htmlVersionStringの取得
	 * 
	 * @return htmlVersionString
	 */
	public String getHtmlVersionString()
	{
		return m_htmlVersionString;
	}
	/**
	 * htmlVersionStringのセット
	 * 
	 * @param htmlVersionString htmlVersionString
	 */
	public void setHtmlVersionString(String htmlVersionString)
	{
		m_htmlVersionString = htmlVersionString;
	}
	/**
	 * specVersionStringの取得
	 * 
	 * @return specVersionString
	 */
	public String getSpecVersionString()
	{
		return m_specVersionString;
	}
	/**
	 * specVersionStringのセット
	 * 
	 * @param specVersionString specVersionString
	 */
	public void setSpecVersionString(String specVersionString)
	{
		m_specVersionString = specVersionString;
	}
	/**
	 * issuerNameの取得
	 * 
	 * @return issuerName
	 */
	public String getIssuerName()
	{
		return m_issuerName;
	}
	/**
	 * issuerNameのセット
	 * 
	 * @param issuerName issuerName
	 */
	public void setIssuerName(String issuerName)
	{
		m_issuerName = issuerName;
	}
	/**
	 * severityStringの取得
	 * 
	 * @return severityString
	 */
	public String getSeverityString()
	{
		return m_severityString;
	}
	/**
	 * severityStringのセット
	 * 
	 * @param severityString severityString
	 */
	public void setSeverityString(String severityString)
	{
		m_severityString = severityString;
	}
	/**
	 * priorityStringの取得
	 * 
	 * @return priorityString
	 */
	public String getPriorityString()
	{
		return m_priorityString;
	}
	/**
	 * priorityStringのセット
	 * 
	 * @param priorityString priorityString
	 */
	public void setPriorityString(String priorityString)
	{
		m_priorityString = priorityString;
	}
	/**
	 * resolutionStringの取得
	 * 
	 * @return resolutionString
	 */
	public String getResolutionString()
	{
		return m_resolutionString;
	}
	/**
	 * resolutionStringのセット
	 * 
	 * @param resolutionString resolutionString
	 */
	public void setResolutionString(String resolutionString)
	{
		m_resolutionString = resolutionString;
	}
	/**
	 * milestoneStringの取得
	 * 
	 * @return milestoneString
	 */
	public String getMilestoneString()
	{
		return m_milestoneString;
	}
	/**
	 * milestoneStringのセット
	 * 
	 * @param milestoneString milestoneString
	 */
	public void setMilestoneString(String milestoneString)
	{
		m_milestoneString = milestoneString;
	}
	/**
	 * autherNameの取得
	 * 
	 * @return autherName
	 */
	public String getAutherName()
	{
		return m_autherName;
	}
	/**
	 * autherNameのセット
	 * 
	 * @param autherName autherName
	 */
	public void setAutherName(String autherName)
	{
		m_autherName = autherName;
	}
	/**
	 * errorTypeStringの取得
	 * 
	 * @return errorTypeString
	 */
	public String getErrorTypeString()
	{
		return m_errorTypeString;
	}
	/**
	 * errorTypeStringのセット
	 * 
	 * @param errorTypeString errorTypeString
	 */
	public void setErrorTypeString(String errorTypeString)
	{
		m_errorTypeString = errorTypeString;
	}
	/**
	 * errorCauseStringの取得
	 * 
	 * @return errorCauseString
	 */
	public String getErrorCauseString()
	{
		return m_errorCauseString;
	}
	/**
	 * errorCauseStringのセット
	 * 
	 * @param errorCauseString errorCauseString
	 */
	public void setErrorCauseString(String errorCauseString)
	{
		m_errorCauseString = errorCauseString;
	}
	/**
	 * issuPnoStringの取得
	 * 
	 * @return issuPnoString
	 */
	public String getIssuPnoString()
	{
		return m_issuPnoString;
	}
	/**
	 * issuPnoStringのセット
	 * 
	 * @param issuPnoString issuPnoString
	 */
	public void setIssuPnoString(String issuPnoString)
	{
		m_issuPnoString = issuPnoString;
	}
	/**
	 * trainPnoStringの取得
	 * 
	 * @return trainPnoString
	 */
	public String getTrainPnoString()
	{
		return m_trainPnoString;
	}
	/**
	 * trainPnoStringのセット
	 * 
	 * @param trainPnoString trainPnoString
	 */
	public void setTrainPnoString(String trainPnoString)
	{
		m_trainPnoString = trainPnoString;
	}
	/**
	 * shouldFindPnoStringの取得
	 * 
	 * @return shouldFindPnoString
	 */
	public String getShouldFindPnoString()
	{
		return m_shouldFindPnoString;
	}
	/**
	 * shouldFindPnoStringのセット
	 * 
	 * @param shouldFindPnoString shouldFindPnoString
	 */
	public void setShouldFindPnoString(String shouldFindPnoString)
	{
		m_shouldFindPnoString = shouldFindPnoString;
	}
	/**
	 * errorDelayReasonStringの取得
	 * 
	 * @return errorDelayReasonString
	 */
	public String getErrorDelayReasonString()
	{
		return m_errorDelayReasonString;
	}
	/**
	 * errorDelayReasonStringのセット
	 * 
	 * @param errorDelayReasonString errorDelayReasonString
	 */
	public void setErrorDelayReasonString(String errorDelayReasonString)
	{
		m_errorDelayReasonString = errorDelayReasonString;
	}
	/**
	 * analystNameの取得
	 * 
	 * @return analystName
	 */
	public String getAnalystName()
	{
		return m_analystName;
	}
	/**
	 * analystNameのセット
	 * 
	 * @param analystName analystName
	 */
	public void setAnalystName(String analystName)
	{
		m_analystName = analystName;
	}
	/**
	 * updaterNameの取得
	 * 
	 * @return updaterName
	 */
	public String getUpdaterName()
	{
		return m_updaterName;
	}
	/**
	 * updaterNameのセット
	 * 
	 * @param updaterName updaterName
	 */
	public void setUpdaterName(String updaterName)
	{
		m_updaterName = updaterName;
	}
	/**
	 * comfirmerNameの取得
	 * 
	 * @return comfirmerName
	 */
	public String getComfirmerName()
	{
		return m_comfirmerName;
	}
	/**
	 * comfirmerNameのセット
	 * 
	 * @param comfirmerName comfirmerName
	 */
	public void setComfirmerName(String comfirmerName)
	{
		m_comfirmerName = comfirmerName;
	}
	/**
	 * updateUnoNameの取得
	 * 
	 * @return updateUnoName
	 */
	public String getUpdateUnoName()
	{
		return m_updateUnoName;
	}
	/**
	 * updateUnoNameのセット
	 * 
	 * @param updateUnoName updateUnoName
	 */
	public void setUpdateUnoName(String updateUnoName)
	{
		m_updateUnoName = updateUnoName;
	}
//===========================================================================
// methods
//===========================================================================
	/**
	 *	クラス情報
	 */
	public String toString()
	{
		StringBuffer sb = new StringBuffer();
		sb.append("--- [FullBug] --- \n");
		sb.append("bno   : " + getBnoString() + "\n");
		sb.append("title : " + getTitle() + "\n");
		sb.append("status: " + getStatusString() + "\n");
		sb.append("update: " + getUpdateDateString() + "\n");
		sb.append("--- [FullBug] --- \n");
		return sb.toString();
	}
	/**
	 *	テストメイン
	 */
	public static void main(String[] args)
	{
		System.out.println("------- << FullBug Test Start >> -----------");
		unitTest1();	//検索テスト
		System.out.println("------- << FullBug Test End >> -----------");
	}
	
	/**
	 *	unitTest1
	 *
	 * 新規作成テスト
	 *
	 */
	public static void unitTest1()
	{
		System.out.println("------- unitTest1 -----------");
		
		Collection list = BugFinder.findFullBug(1);
		//表示
		display(list);
		
	}
	/**
	 * リストの表示
	 *
	 */
	private static void display(Collection list)
	{
		Iterator ite = list.iterator();
		
		while(ite.hasNext()) {
			FullBug FullBug = (FullBug)ite.next();
			
			System.out.println(FullBug.toString());
		}
	}
}