2015年7月19日日曜日

[メタデータエディタ]SubstanceDomain

サブスタンスのドメインクラス。

package domain;

import util.CnvUtil;
import dao.SubstanceDao;
import entity.Substance;

/**
 * サブスタンスドメイン
 */
public class SubstanceDomain {

    /** サブスタンスDAO */
    private SubstanceDao substanceDao = null;

    public SubstanceDao getSubstanceDao() {
        return substanceDao;
    }

    public void setSubstanceDao(SubstanceDao substanceDao) {
        this.substanceDao = substanceDao;
    }

    /** エンティティ */
    private Substance entity;

    public Substance getEntity() {
        return entity;
    }

    public void setEntity(Substance entity) {
        this.entity = entity;
    }

    /**
     * サブスタンスを更新します。
     *
     * @param metaData
     *            更新するサブスタンス
     */
    public void update(Substance metaData) {

        // DAOの更新を呼び出す
        substanceDao.update(metaData);
    }

    /**
     * サブスタンスを削除します。
     */
    public void delete() {

        // DAOの削除を呼び出す
        substanceDao.delete(entity.getSubstanceId());
    }

    /**
     * デフォルト値を適用します。
     */
    public void applyDefaultValue() {

        // そもそもデフォルト値が設定されていない場合は即時終了する
        if (entity == null || entity.getMetaData() == null
                || entity.getMetaData().getDefaultValue() == null
                || entity.getMetaData().getDefaultValue().length() == 0) {
            return;
        }

        // デフォルト値を更新する(これはコミットしない、データが変動するため)
        CnvUtil cnvUtil = new CnvUtil(substanceDao, entity.getMetaData()
                .getDefaultValue(), entity);
        entity.setDefaultValue(cnvUtil.getAfterConvertList().get(0));
    }
}

0 件のコメント:

コメントを投稿