/*********************************************************************
*   All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JZMejbZM0481KRCK
*   ソースファイル名：JZMejbZM0481KRCK.java
*   作成者          ：富士通
*   日付            ：2012年03月02日
*＜機能概要＞
*   IPv6アドレスの関連制約部品クラス
*＜修正履歴＞
*   バージョン  修正日      修正者      修正内容
*   v1.00.00    2012/03/02  富士通      新規作成
*
**********************************************************************/

package eo.ejb.common.entity;

import com.fujitsu.futurity.model.base.CAANException;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.base.CAANRuntimeException;

import eo.ejb.cbm.entity.ZM0481ETMsg;
import eo.ejb.cbm.entity.ZM0481LE;
import eo.ejb.common.db.JKKejbZM0481DBABase;

/**
 * <p>
 * IPv6アドレスの関連制約部品クラスです。
 * </p>
 * @author 富士通
 */
public class JZMejbZM0481KRCK extends JKKejbZM0481DBABase
{

	/** 無効フラグ（有効） */
	private static final String MK_FLG_YUKO = "0";
	
	/**
	 * <p>
	 * 新しいJZMejbZM0481KRCKを作成します。
	 * </p>
	 */
	public JZMejbZM0481KRCK()
	{
		super();
	}

	/**
	 * <p>
	 * IPv6アドレスの存在チェックを行います。（有効なレコード）
	 * </p>
	 * @param ipv6Ad IPv6アドレス
	 * @return レコードが存在する場合はtrue。存在しない場合はfalse。
	 */
	public boolean isExistsNonGene(String ipv6Ad)
	{
		if(null == ipv6Ad || "".equals(ipv6Ad))
		{
			return true;
		}

		// ETメッセージ
		CAANMsg msg = new CAANMsg(ZM0481ETMsg.class.getName());
		msg.set(ZM0481ETMsg.IPV6_AD_IFID, ipv6Ad);
		msg.set(ZM0481ETMsg.MK_FLG, MK_FLG_YUKO);

		// ロジカルエンティティ生成
		ZM0481LE le = new ZM0481LE();

		try
		{
			CAANMsg[] rsltList = le.findByCondition(msg);

			//存在しない場合
			if (rsltList.length == 0)
			{
				return false;
			}

			//存在する場合
			return true;
		}
		catch (CAANException ex)
		{
			throw new CAANRuntimeException(ex);
		}
	}
}
