ルートメタ検索サービスの実装クラス。
package service.impl;
import java.util.ArrayList;
import java.util.List;
import service.DomainDrivenService;
import service.FindRootMetaService;
import service.param.ServiceInputParameter;
import service.param.ServiceOutputParameter;
import service.param.SopFindRootMetaService;
import util.CopyUtil;
import domain.MetaDataDomain;
import domain.MetaDataRepository;
import dto.MetaDataDto;
/**
* ルートメタ検索サービス(実装)
*/
public class FindRootMetaServiceImpl implements DomainDrivenService,
FindRootMetaService {
/** メタデータリポジトリ */
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) {
// サービスを実行する
List<MetaDataDto> metaDataDtoList = doService();
// サービス出力パラメータを作成する
SopFindRootMetaService sop = new SopFindRootMetaService(metaDataDtoList);
// 出力パラメータを作成し、呼び出し側に戻す
return sop;
}
/*
* (非 Javadoc)
*
* @see service.FindRootMetaService#doService()
*/
@Override
public List<MetaDataDto> doService() {
// ルートメタ検索を実行する
List<MetaDataDomain> metaDataDomainList = metaDataRepository
.findRootMeta();
// メタデータドメインリストをメタデータDTOリストに変換する
List<MetaDataDto> list = new ArrayList<MetaDataDto>();
for (MetaDataDomain domain : metaDataDomainList) {
MetaDataDto dto = new MetaDataDto();
CopyUtil.copy(domain.getEntity(), dto);
list.add(dto);
}
// 作成したメタデータDTOリストを呼び出し側に戻す
return list;
}
}
0 件のコメント:
コメントを投稿