2015年7月19日日曜日

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

サブスタンスを新規作成する場合のビジネスルールのクラス。
サブスタンスは必ずメタデータに対応したものでなければならないため、対応するメタデータが存在しない場合はエラーとしている。

package br;

import util.PropUtil;
import dao.MetaDataDao;
import dao.SubstanceDao;
import entity.MetaData;
import entity.Substance;
import exception.BusinessRuleViolationException;

/**
 * サブスタンス新規作成ビジネスルール
 */
public class CreateSubstanceBusinessRule {

    /** メタデータDAO */
    private MetaDataDao metaDataDao = null;

    /**
     * コンストラクタ
     */
    public CreateSubstanceBusinessRule(MetaDataDao metaDataDao,
            SubstanceDao substanceDao) {

        // メタデータDAOを設定する
        this.metaDataDao = metaDataDao;
    }

    /**
     * メタデータ新規作成時のチェックを行います。
     */
    public void check(Substance substance) {

        // メタデータが存在しない場合はエラーとする
        MetaData metaData = metaDataDao.get(substance.getMetaDataId());
        if (metaData == null) {
            throw new BusinessRuleViolationException(
                    PropUtil.get("msg.err.metaDataNotFound"));
        }
    }
}

0 件のコメント:

コメントを投稿