com.xiaoleilu.hutool.io.IORuntimeException Maven / Gradle / Ivy
package com.xiaoleilu.hutool.io;
import com.xiaoleilu.hutool.exceptions.ExceptionUtil;
import com.xiaoleilu.hutool.util.StrUtil;
/**
* IO运行时异常异常
* @author xiaoleilu
*/
public class IORuntimeException extends RuntimeException{
private static final long serialVersionUID = 8247610319171014183L;
public IORuntimeException(Throwable e) {
super(ExceptionUtil.getMessage(e), e);
}
public IORuntimeException(String message) {
super(message);
}
public IORuntimeException(String messageTemplate, Object... params) {
super(StrUtil.format(messageTemplate, params));
}
public IORuntimeException(String message, Throwable throwable) {
super(message, throwable);
}
public IORuntimeException(Throwable throwable, String messageTemplate, Object... params) {
super(StrUtil.format(messageTemplate, params), throwable);
}
/**
* 导致这个异常的异常是否是指定类型的异常
* @param clazz 异常类
* @return 是否为指定类型异常
*/
public boolean causeInstanceOf(Class extends Throwable> clazz){
Throwable cause = this.getCause();
if(null != cause && clazz.isInstance(cause)){
return true;
}
return false;
}
}