5 changed files with 148 additions and 12 deletions
@ -0,0 +1,96 @@ |
|||
/** |
|||
* Copyright (c) 2018 人人开源 All rights reserved. |
|||
* <p> |
|||
* https://www.renren.io
|
|||
* <p> |
|||
* 版权所有,侵权必究! |
|||
*/ |
|||
|
|||
package com.epmet.commons.tools.exception; |
|||
|
|||
|
|||
import com.epmet.commons.tools.constant.StrConstant; |
|||
import com.epmet.commons.tools.utils.MessageUtils; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
|
|||
/** |
|||
* Epmet产品 自定义异常 |
|||
* |
|||
* @author Mark sunlightcs@gmail.com |
|||
* @since 1.0.0 |
|||
*/ |
|||
public class EpmetException extends RuntimeException { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
/** |
|||
* desc:错误码 |
|||
*/ |
|||
protected int code; |
|||
/** |
|||
* 显示给客户的消息 |
|||
*/ |
|||
protected String msg; |
|||
/** |
|||
* 内部消息,用于服务之间传递错误信息,排错用 |
|||
*/ |
|||
protected String internalMsg; |
|||
|
|||
/** |
|||
* desc:指定错误码异常 外部异常内容为错误码对应的异常 |
|||
* @param code |
|||
*/ |
|||
public EpmetException(int code) { |
|||
this(code, StrConstant.EPMETY_STR); |
|||
} |
|||
|
|||
/** |
|||
* desc:指定内部错误消息的异常 外部异常内容为错误码对应的异常 |
|||
* @param code |
|||
* @param internalMsg |
|||
*/ |
|||
public EpmetException(int code, String internalMsg) { |
|||
super(internalMsg); |
|||
this.code = code; |
|||
if (StringUtils.isBlank(internalMsg)) { |
|||
this.internalMsg = EpmetErrorCode.getMsg(code); |
|||
if (StringUtils.isBlank(this.internalMsg)) { |
|||
this.internalMsg = MessageUtils.getMessage(code, internalMsg); |
|||
} |
|||
} else { |
|||
this.internalMsg = internalMsg; |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* desc:指定错误码 内外部错误消息异常 |
|||
* @param code |
|||
* @param internalMsg |
|||
* @param externalMsg |
|||
*/ |
|||
public EpmetException(int code, String internalMsg, String externalMsg) { |
|||
this(code, internalMsg); |
|||
this.msg = externalMsg; |
|||
} |
|||
|
|||
/** |
|||
* desc:指定内部消息异常 外部错误码及消息为8000,服务器开小差 |
|||
* @param internalMsg |
|||
*/ |
|||
public EpmetException(String internalMsg) { |
|||
super(internalMsg); |
|||
this.code = EpmetErrorCode.SERVER_ERROR.getCode(); |
|||
this.internalMsg = internalMsg; |
|||
} |
|||
|
|||
public int getCode() { |
|||
return code; |
|||
} |
|||
|
|||
public String getMsg() { |
|||
return msg; |
|||
} |
|||
|
|||
public String getInternalMsg() { |
|||
return internalMsg; |
|||
} |
|||
} |
Loading…
Reference in new issue