package com.dl.common.exception.base;
|
|
import com.dl.common.utils.MessageUtils;
|
import com.dl.common.utils.StringUtils;
|
import lombok.Data;
|
import lombok.EqualsAndHashCode;
|
import lombok.NoArgsConstructor;
|
|
/**
|
* 基础异常
|
*
|
* @author dl
|
*/
|
@Data
|
@EqualsAndHashCode(callSuper = true)
|
@NoArgsConstructor
|
public class BaseException extends RuntimeException {
|
private static final long serialVersionUID = 1L;
|
|
/**
|
* 所属模块
|
*/
|
private String module;
|
|
/**
|
* 错误码
|
*/
|
private String code;
|
|
/**
|
* 错误码对应的参数
|
*/
|
private Object[] args;
|
|
/**
|
* 错误消息
|
*/
|
private String defaultMessage;
|
|
public BaseException(String module, String code, Object[] args, String defaultMessage) {
|
this.module = module;
|
this.code = code;
|
this.args = args;
|
this.defaultMessage = defaultMessage;
|
}
|
|
public BaseException(String module, String code, Object[] args) {
|
this(module, code, args, null);
|
}
|
|
public BaseException(String module, String defaultMessage) {
|
this(module, null, null, defaultMessage);
|
}
|
|
public BaseException(String code, Object[] args) {
|
this(null, code, args, null);
|
}
|
|
public BaseException(String defaultMessage) {
|
this(null, null, null, defaultMessage);
|
}
|
|
@Override
|
public String getMessage() {
|
String message = null;
|
if (!StringUtils.isEmpty(code)) {
|
message = MessageUtils.message(code, args);
|
}
|
if (message == null) {
|
message = defaultMessage;
|
}
|
return message;
|
}
|
|
}
|