/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：KK3131LE
*	ソースファイル名：KK3131LE.java
*	作成者			：EK945604
*	日付			：2018年01月16日
*＜機能概要＞
*	工事費割賦契約 ロジカルエンティティクラス
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*
********************************************************************************/

package eo.ejb.cbm.entity;

import com.fujitsu.futurity.model.base.CAANException;
import com.fujitsu.futurity.model.base.CAANLERule;
import com.fujitsu.futurity.model.base.CAANLog;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.base.CAANSQLEntity;
import com.fujitsu.futurity.model.base.CAANLEForSQLE;

public class KK3131LE extends CAANLEForSQLE {

    /**
     * SQLEntityの保持領域
     */
    private CAANSQLEntity sqlEnt = null;
    
    /**
     * デフォルトコンストラクタです。
     */
    public KK3131LE() {
        super();
    }

    /**
     * プライマリキーにより更新モードで検索します。
     * @param  inMsg  検索するエンティティのプライマリ情報
     * @return        検索結果を格納したメッセージキャリア
     * @exception CAANException エンティティ検索時のエラーを通知
     */
    protected CAANMsg findByKeyForUpdateE(CAANMsg inMsg) throws CAANException {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#findByKeyForUpdateE");

        return super.findByKeyForUpdateE(inMsg);

    }

    /**
     * プライマリキーにより更新モードで検索します。
     * 検索結果の無い場合nullを返します。
     * プライマリキー検索でExceptionを受け取りたくない場合に使います。
     * @param  inMsg  検索するエンティティのプライマリ情報
     * @return        検索結果を格納したメッセージキャリア<BR>
     *                見つからなかった場合は null
     */
    protected CAANMsg findByKeyForUpdate(CAANMsg inMsg) {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#findByKeyForUpdate");

        return super.findByKeyForUpdate(inMsg);

    }

    /**
     * 全件検索を行ないます。
     * @param  inMsg  検索するエンティティの最大件数
     * @return        検索結果を格納したメッセージキャリアの配列
     * @exception CAANException エンティティ検索時のエラーを通知
     */
    public CAANMsg[] findByCondition(CAANMsg inMsg) throws CAANException {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#findByCondition");

        KK3131SQLEntity sql = (KK3131SQLEntity)getSQLEntity();
        return sql.findByCondition(inMsg);

    }

    /**
     * エンティティを生成します。
     * @param  inMsg  エンティティの情報を格納したメッセージキャリア
     * @return        生成したエンティティの情報を格納したメッセージキャリア
     * @exception CAANException エンティティ生成時のエラーを通知
     */
    protected CAANMsg create(CAANMsg inMsg) throws CAANException {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#create");

        return super.create(inMsg);

    }

    /**
     * 既存のエンティティを更新します。
     * @param  inMsg  更新するエンティティの情報を格納したメッセージキャリア
     * @return        更新結果を格納したメッセージキャリア
     * @exception CAANException エンティティ更新時のエラーを通知
     */
    protected CAANMsg update(CAANMsg inMsg) throws CAANException {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#update");

        return super.update(inMsg);

    }

    /**
     * 指定した主キーを持つエンティティを物理削除します。
     * @param  inMsg  削除するエンティティの情報を格納したメッセージキャリア
     * @return        削除結果を格納したメッセージキャリア
     * @exception CAANException エンティティ削除時のエラーを通知
     */
    protected CAANMsg remove(CAANMsg inMsg) throws CAANException {

        CAANLog.println(CAANLog.LEVEL_APP_PROTECTED, "CALL: KK3131LE#remove");

        return super.remove(inMsg);

    }

    /**
     * ロジカルエンティティルールを取得します。
     * @return ロジカルエンティティルール
     */
    protected final CAANLERule getLERule() {

        return null;

    }

    /**
     * SQLEntity を取得します。
     * CAANLEForSQLEクラス抽象メソッドの実装です。
     * @return SQLEntity
     */
    protected CAANSQLEntity getSQLEntity() {

        if (sqlEnt == null) {
            sqlEnt = new KK3131SQLEntity();
        }
        return sqlEnt;
    }

}
