📄 messagequeueexception.java
字号:
package ionic.Msmq;
/**
*title: java调用MSMQ产生的消息队列异常信息类 <br />
*copy 中智软件<br />
*company ZZsoft<br />
*@version 1.2
*@author ionic,郭帆
*/
public class MessageQueueException extends java.lang.Exception{
/**
* 产生的异常类型
*/
public int _hresult;
/**
* 构造函数1
* @param hresult 异常类型
*/
public MessageQueueException(int hresult) {
// TODO Auto-generated constructor stub
super();
_hresult = hresult;
}
/**
* 构造函数2
* @param message 异常的说明信息
* @param hresult 异常类型
*/
public MessageQueueException(String message,int hresult){
super(message);
_hresult = hresult;
}
/**
* 重载ToString
*/
public String toString(){
/*
* 关于getLocalizedMessage()的说明,是Throwable接口下的方法
* Creates a localized description of this throwable.
* Subclasses may override this method in order to produce
* a locale-specific message.For subclasses that do not
* override this method, the default implementation
* returns the same result as getMessage().
*/
String msg = getLocalizedMessage();
String hr = "Hr=" + HrToString(_hresult);
return msg + " (" + hr + ") ";
}
/**
* 根据异常类型返回异常的字符串信息
* @param hresult 异常类型
* @return
*/
private static String HrToString(int hresult){
switch(hresult){
case 0:
return "Success";
case 0xC00E0002:
return "MQ_ERROR_PROPERTY";
case 0xC00E0003:
return "MQ_ERROR_QUEUE_NOT_FOUND";
case 0xC00E0005:
return "MQ_ERROR_QUEUE_EXISTS";
case 0xC00E0006:
return "MQ_ERROR_INVALID_PARAMETER";
case 0xC00E0007:
return "MQ_ERROR_INVALID_HANDLE";
case 0xC00E000A:
return "MQ_ERROR_QUEUE_DELETED";
case 0xC00E000B:
return "MQ_ERROR_SERVICE_NOT_AVAILABLE";
case 0xC00E001B:
return "MQ_ERROR_IO_TIMEOUT";
case 0xC00E001E:
return "MQ_ERROR_ILLEGAL_FORMATNAME";
case 0xC00E0025:
return "MQ_ERROR_ACCESS_DENIED";
case 0xC00E0013:
return "MQ_ERROR_NO_DS";
case 0xC00E003F:
return "MQ_ERROR_INSUFFICIENT_PROPERTIES";
case 0xC00E0014:
return "MQ_ERROR_ILLEGAL_QUEUE_PATHNAME";
case 0xC00E0044:
return "MQ_ERROR_INVALID_OWNER";
case 0xC00E0045:
return "MQ_ERROR_UNSUPPORTED_ACCESS_MODE";
case 0xC00E0069:
return "MQ_ERROR_REMOTE_MACHINE_NOT_AVAILABLE";
default:
return "UnknownHr( " + hresult + " )";
}
}
/**
* 已屏蔽的单元测试
* @param args
*/
/*
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println((new MessageQueueException("UnkownError",18)).toString());
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -