メタデータ削除サービスの実装クラス。
package service.impl;
import service.DeleteMetaDataService;
import service.DomainDrivenService;
import service.param.ServiceInputParameter;
import service.param.ServiceOutputParameter;
import service.param.SipDeleteMetaDataService;
import service.param.SopDeleteMetaDataService;
import domain.MetaDataRepository;
/**
* メタデータ削除サービス(実装)
*/
public class DeleteMetaDataServiceImpl implements DomainDrivenService,
DeleteMetaDataService {
/** メタデータリポジトリ */
private MetaDataRepository metaDataRepository = null;
public MetaDataRepository getMetaDataRepository() {
return metaDataRepository;
}
public void setMetaDataRepository(MetaDataRepository metaDataRepository) {
this.metaDataRepository = metaDataRepository;
}
/*
* (非 Javadoc)
*
* @see
* service.DomainDrivenService#doService(service.param.ServiceInputParameter
* )
*/
@Override
public ServiceOutputParameter doService(ServiceInputParameter sip) {
// 入力パラメータからメタデータIDを取得する
Integer metaDataId = ((SipDeleteMetaDataService) sip).getMetaDataId();
// サービスを実行する
doService(metaDataId);
// サービス出力パラメータを作成する
SopDeleteMetaDataService sop = new SopDeleteMetaDataService();
// 出力パラメータを作成し、呼び出し側に戻す
return sop;
}
/*
* (非 Javadoc)
*
* @see service.DeleteMetaDataService#doService(java.lang.Integer)
*/
@Override
public void doService(Integer metaDataId) {
// 全ての子メタを削除する
metaDataRepository.deleteWithAllChild(metaDataRepository
.getDomain(metaDataId));
}
}
0 件のコメント:
コメントを投稿