2015年7月19日日曜日

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

ファイル保存サービスの実装クラス。

package service.impl;

import service.DomainDrivenService;
import service.SaveFileService;
import service.param.ServiceInputParameter;
import service.param.ServiceOutputParameter;
import service.param.SipSaveFileService;
import service.param.SopSaveFileService;
import domain.MetaDataRepository;

/**
 * ファイル保存サービス(実装)
 */
public class SaveFileServiceImpl implements DomainDrivenService,
        SaveFileService {

    /** メタデータリポジトリ */
    private MetaDataRepository metaDataRepository = null;

    public MetaDataRepository getMetaDataRepository() {
        return metaDataRepository;
    }

    public void setMetaDataRepository(MetaDataRepository metaDataRepository) {
        this.metaDataRepository = metaDataRepository;
    }

    @Override
    public ServiceOutputParameter doService(ServiceInputParameter sip) {

        // 入力パラメータからサブスタンスIDを取得する
        String fileName = ((SipSaveFileService) sip).getFileName();

        // サービスを実行する
        doService(fileName);

        // サービス出力パラメータを作成する
        SopSaveFileService sop = new SopSaveFileService();

        // 出力パラメータを作成し、呼び出し側に戻す
        return sop;
    }

    /*
     * (非 Javadoc)
     *
     * @see service.SaveFileService#doService(java.lang.String)
     */
    @Override
    public void doService(String fileName) {

        // リポジトリの保存メソッドを呼び出す
        metaDataRepository.saveFile(fileName);
    }
}

0 件のコメント:

コメントを投稿