package jp.terasoluna.batch.functionsample.b004;

import org.springframework.dao.DataAccessException;
import org.springframework.dao.DataIntegrityViolationException;

import jp.terasoluna.fw.batch.blogic.BLogic;
import jp.terasoluna.fw.batch.blogic.vo.BLogicParam;
import jp.terasoluna.fw.file.dao.FileException;

/**
 * 例外ハンドラ関連ジョブのサンプル<br>
 * <br>
 * 
 * 事前準備：なし<br>
 * <br>
 * サンプル内容： 実行例外を故意にスローして、独自の例外ハンドラとメッセージユーティリティの動作を確認するサンプル。
 * 
 * 
 */
public class B004002BLogic implements BLogic {

	public int execute(BLogicParam arg0) {

		if ("1".equals(arg0.getJobArgNm1())) {
			// 実行例外をスロー
			throw new FileException("FileExceptioon is thrown...");
		} else if ("2".equals(arg0.getJobArgNm1())) {
			// 実行例外をスロー
			throw new DataIntegrityViolationException(
					"DataIntegrityViolationException is thrown...");
		} else {
			// 実行例外をスロー
			throw new RuntimeException("RuntimeExceptioon is thrown...");

		}

	}

}
