
nablarch.core.message.ApplicationException Maven / Gradle / Ivy
The newest version!
package nablarch.core.message;
import java.util.ArrayList;
import java.util.List;
import nablarch.core.util.annotation.Published;
/**
* 業務エラーが発生した際のメッセージ通知に使用する例外クラス。
*
* 本クラスは内部に処理結果メッセージ({@link Message})のリストを保持する。
*
* @author Koichi Asano
*
*/
@Published
public class ApplicationException extends RuntimeException {
/**
* 処理結果メッセージのリスト。
*/
private List messages;
/**
* ApplicationExceptionオブジェクトを生成する。
*/
public ApplicationException() {
messages = new ArrayList();
}
/**
* 指定した処理結果メッセージを保持するApplicationExceptionオブジェクトを生成する。
*
* @param message 処理結果メッセージ
*/
public ApplicationException(Message message) {
this.messages = new ArrayList();
this.messages.add(message);
}
/**
* 指定した処理結果メッセージのリストを保持するApplicationExceptionオブジェクトを生成する。
*
* @param messages 処理結果メッセージのリスト
*/
public ApplicationException(List messages) {
this.messages = new ArrayList();
this.messages.addAll(messages);
}
/**
* 処理結果メッセージを追加する。
*
* @param message 処理結果メッセージ
*/
public void addMessages(Message message) {
this.messages.add(message);
}
/**
* 処理結果メッセージを追加する。
*
* @param messages 処理結果メッセージのリスト
*/
public void addMessages(List messages) {
this.messages.addAll(messages);
}
/**
* 処理結果メッセージのリストを取得する。
*
* @return 処理結果メッセージのリスト
*/
public List getMessages() {
return messages;
}
@Override
public String getMessage() {
StringBuilder builder = new StringBuilder();
for (Message message : messages) {
builder.append(message.formatMessage() + '\n');
}
return builder.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy