com.ibm.mq
类 MQQueue
- java.lang.Object
- com.ibm.mq.jmqi.JmqiObject
- com.ibm.mq.MQManagedObject
- com.ibm.mq.MQDestination
- com.ibm.mq.MQQueue
公用类 MQQueue 扩展 MQDestination
MQQueue 为 IBM MQ 队列提供查询,设置,放置和获取操作。 查询和集合功能继承自
MQManagedObject。使用
MQQueueManager.accessQueue()来获取对 MQQueue 对象的访问权。
-
字段摘要
-
从类 com.ibm.mq继承的字段。MQManagedObject
alternateUserId, closeOptions, connectionReference, isOpen, name, openOptions
-
-
构造函数摘要
构造函数 构造函数和描述 MQQueue(MQQueueManager qMgr, java.lang.String queueName, int openOptions, java.lang.String queueManagerName, java.lang.String dynamicQueueName, java.lang.String alternateUserId)允许用户创建 MQQueue 子类的公共构造函数。
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法和描述 voidclose()关闭对象。intgetCurrentDepth()获取当前在队列中的消息数。intgetDefinitionType()指示队列的定义方式。intgetInhibitGet()指示是否允许对此队列执行 get 操作。intgetInhibitPut()指示是否允许对此队列执行放置操作。intgetMaximumDepth()获取可同时存在于队列中的最大消息数。intgetMaximumMessageLength()获取此队列上消息的应用程序数据的最大长度。intgetOpenInputCount()获取用于从队列中除去消息的当前有效句柄数。intgetOpenOutputCount()获取用于将消息添加到队列的当前有效句柄数。intgetQueueType()获取此队列的类型。intgetShareability()指示是否可以多次打开队列以进行输入。intgetTriggerControl()指示是否将触发器消息写入启动队列。java.lang.StringgetTriggerData()获取写入启动队列的触发器消息的数据。intgetTriggerDepth()获取必须在队列上才能生成触发器消息的消息数。intgetTriggerMessagePriority()获取消息优先级,低于此优先级的消息不会导致触发消息。intgetTriggerType()指示写入触发器消息的条件。voidputForwardMessage(MQMessage message)使用缺省 put 消息选项和消息作为原始消息,将正在转发的消息放入队列voidputForwardMessage(MQMessage message, MQPutMessageOptions putMessageOptions)使用消息作为原始消息将正在转发的消息放入队列voidputReplyMessage(MQMessage message)使用缺省 put 消息选项和消息作为原始消息将应答消息放入队列voidputReplyMessage(MQMessage message, MQPutMessageOptions putMessageOptions)使用消息作为原始消息将应答消息放入队列voidputReportMessage(MQMessage message)使用缺省 put 消息选项和消息作为原始消息将报告消息放入队列voidputReportMessage(MQMessage message, MQPutMessageOptions putMessageOptions)使用消息作为原始消息将报告消息放入队列voidsetInhibitGet(int inhibit)控制是否允许对此队列执行获取操作。voidsetInhibitPut(int inhibit)控制是否允许对此队列执行放置操作。voidsetTriggerControl(int trigger)控制是否将触发器消息写入启动队列。voidsetTriggerData(java.lang.String data)设置写入启动队列的触发器消息的数据。voidsetTriggerDepth(int depth)设置必须在队列上才能生成触发器消息的消息数。voidsetTriggerMessagePriority(int priority)设置消息优先级,低于此优先级的消息不会导致触发消息。voidsetTriggerType(int type)设置写入触发器消息的条件。-
从类 com.ibm.mq继承的方法。MQDestination
get, get, get, getCreationDateTime, getDestinationType, getQueueManagerCmdLevel, put, put, setQueueManagerCmdLevel
-
-
-
构造函数详细信息
MQQueue
公共 MQQueue (MQQueueManager qMgr, java.lang.String queueName, int openOptions, java.lang.String queueManager名称, java.lang.String dynamicQueue名称 java.lang.String alternateUser标识) 抛出 MQException
允许用户创建 MQQueue 子类的公共构造函数。- 参数:
qMgr-表示队列所在的队列管理器的对象。queueName-要打开的队列的名称。openOptions-用于控制队列打开的选项。 有效选项为:CMQC.MQOO_ALTERNATE_USER_AUTHORITYCMQC.MQOO_BIND_AS_Q_DEFCMQC.MQOO_BIND_NOT_FIXEDCMQC.MQOO_BIND_ON_OPENCMQC.MQOO_BROWSECMQC.MQOO_FAIL_IF_QUIESCINGCMQC.MQOO_INPUT_AS_Q_DEFCMQC.MQOO_INPUT_SHAREDCMQC.MQOO_INPUT_EXCLUSIVECMQC.MQOO_INQUIRECMQC.MQOO_OUTPUTCMQC.MQOO_PASS_ALL_CONTEXTCMQC.MQOO_PASS_IDENTITY_CONTEXTCMQC.MQOO_SAVE_ALL_CONTEXTCMQC.MQOO_SETCMQC.MQOO_SET_ALL_CONTEXTCMQC.MQOO_SET_IDENTITY_CONTEXTCMQC.MQOO_RESOLVE_LOCAL_Q
如果需要多个选项,那么可以使用 "+" 或 "|" 运算符来组合值。
queueManagerName-在其中定义队列的队列管理器的名称。 如果为空或为空,那么将使用此 MQQueueManager 对象所连接的队列管理器。dynamicQueueName-指定要创建的动态队列的名称。 除非 queueName 指定模型队列的名称,否则将忽略该名称,在这种情况下,该名称不得为空或空。 如果名称中的最后一个非空白字符是星号 (*) ,那么队列管理器会将星号替换为字符串,以保证为队列生成的名称在此队列管理器上是唯一的。alternateUserId-用于检查打开权限的备用用户标识 (如果在 openOptions中指定了CMQC.MQOO_ALTERNATE_USER_AUTHORITY)。- 抛出:
MQException-如果无法打开队列。
-
方法详细信息
putForward消息
public void putForward消息 (MQMessage 消息) 抛出 MQException, java.io.IOException
使用缺省 put 消息选项和消息作为原始消息,将正在转发的消息放入队列- 参数:
message-要转发- 抛出:
MQException-如果 MQI 调用失败java.io.IOException-如果存在 IO 错误
putForward消息
public void putForward消息 (MQMessage 消息, MQPutMessage选项 putMessage选项) 抛出 MQException, java.io.IOException
使用消息作为原始消息将正在转发的消息放入队列- 参数:
message-要转发putMessageOptions-用于 MQPUT- 抛出:
MQException-如果 MQI 调用失败java.io.IOException-如果存在 IO 错误
putReply消息
public void putReply消息 (MQMessage 消息) 抛出 MQException, java.io.IOException
使用缺省 put 消息选项和消息作为原始消息将应答消息放入队列- 参数:
message--原始消息。- 抛出:
MQException-如果 MQ 调用失败java.io.IOException-如果存在 IO 错误
putReply消息
public void putReply消息 (MQMessage 消息, MQPutMessage选项 putMessage选项) 抛出 MQException, java.io.IOException
使用消息作为原始消息将应答消息放入队列- 参数:
message--原始消息。putMessageOptions-用于 MQPUT。- 抛出:
MQException-如果 MQ 调用失败java.io.IOException-如果存在 IO 错误
putReport消息
public void putReport消息 (MQMessage 消息) 抛出 MQException, java.io.IOException
使用缺省 put 消息选项和消息作为原始消息将报告消息放入队列- 参数:
message--原始消息。- 抛出:
MQException-如果 MQ 调用失败java.io.IOException-如果存在 IO 错误
putReport消息
public void putReport消息 (MQMessage 消息, MQPutMessage选项 putMessage选项) 抛出 MQException, java.io.IOException
使用消息作为原始消息将报告消息放入队列- 参数:
message-原始消息putMessageOptions-用于 MQPUT- 抛出:
MQException-如果 MQ 调用失败java.io.IOException-如果存在 IO 错误
关闭
public void close() 抛出 MQException关闭对象。 关闭此对象后,不允许对此对象执行任何进一步的操作。 可以通过设置 closeOptions来改变 close 方法的行为。- 覆盖:
close的实例MQManagedObject- 抛出:
MQException-如果 IBM MQ 调用失败。
getQueue类型
public int getQueue类型 () 抛出 MQException获取此队列的类型。- 返回:
- 以下其中一项:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getCurrent深度
public int getCurrentDepth () 抛出 MQException获取当前在队列中的消息数。 在 put 调用期间以及在回退 get 调用期间,此值递增。 在非浏览获取期间以及在回退 put 调用期间,将对其进行递减。- 返回:
- 消息数目。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getDefinition类型
public int getDefinition类型 () 抛出 MQException指示队列的定义方式。- 返回:
- 以下其中一项:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getMaximum深度
公用整数 getMaximumDepth () 抛出 MQException获取可同时存在于队列中的最大消息数。 尝试将消息放入已包含此大量消息的队列失败,原因码为 MQConstants.MQRC_Q_FULL。- 返回:
- 最大消息数。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getMaximumMessageLength
public int getMaximumMessageLength() 抛出 MQException获取此队列上消息的应用程序数据的最大长度。 尝试放置大于此值的消息失败,原因码为 MQConstants.MQRC_MSG_TOO_BIG_FOR_Q。- 返回:
- 最大长度。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getOpenInputCount
public int getOpenInputCount() 抛出 MQException获取用于从队列中除去消息的当前有效句柄数。- 返回:
- 本地队列管理器已知的有效句柄总数,而不仅仅是那些由 IBM MQ Client for Java (使用 accessQueue()) 创建的句柄。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getOpenOutputCount
public int getOpenOutputCount() 抛出 MQException获取用于将消息添加到队列的当前有效句柄数。- 返回:
- 本地队列管理器已知的有效句柄总数,而不仅仅是那些由 IBM MQ Client for Java (使用 accessQueue()) 创建的句柄。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getShareability
public int getShareability() 抛出 MQException指示是否可以多次打开队列以进行输入。- 返回:
- 以下其中一项:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getInhibit放置
public int getInhibitPut () 抛出 MQException指示是否允许对此队列执行放置操作。- 返回:
- 以下其中一项:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setInhibit放置
public void setInhibitPut (int 禁止) 抛出 MQException控制是否允许对此队列执行放置操作。- 参数:
inhibit-允许的值为:- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getInhibit获取
public int getInhibitGet () 抛出 MQException指示是否允许对此队列执行 get 操作。- 返回:
- 以下其中一项:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setInhibit获取
public void setInhibit获取 (int 禁止) 抛出 MQException控制是否允许对此队列执行获取操作。- 参数:
inhibit-允许的值为:- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getTrigger控件
public int getTrigger控制 () 抛出 MQException指示是否将触发器消息写入启动队列。 这将启动应用程序来为队列提供服务。- 返回:
- 可能的值为:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setTrigger控件
public void setTriggerControl (int 触发器) 抛出 MQException控制是否将触发器消息写入启动队列。 这将启动应用程序来为队列提供服务。- 参数:
trigger-允许的值为:- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getTrigger数据
public java.lang.String getTriggerData () 抛出 MQException获取写入启动队列的触发器消息的数据。 当消息到达此消息时,会将触发器消息写入启动队列。- 返回:
- 数据的自由格式。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setTrigger数据
public void setTrigger数据 (java.lang.String 数据) 抛出 MQException设置写入启动队列的触发器消息的数据。 当消息到达此消息时,会将触发器消息写入启动队列。- 参数:
data-以自由格式设置数据。 字符串的最大允许长度由CMQC.MQ_TRIGGER_DATA_LENGTH给出。- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getTrigger深度
public int getTrigger深度 () 抛出 MQException获取必须在队列上才能生成触发器消息的消息数。 当触发器类型为CMQC.MQTT_DEPTH时适用。- 返回:
- 消息数目。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setTrigger深度
public void setTriggerDepth (int depth) 抛出 MQException设置必须在队列上才能生成触发器消息的消息数。 当触发器类型为CMQC.MQTT_DEPTH时适用。- 参数:
depth-消息数。- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getTriggerMessagePriority
public int getTriggerMessagePriority() 抛出 MQException获取消息优先级,低于此优先级的消息不会导致触发消息。 即,队列管理器在决定是否生成触发器时忽略这些消息。- 返回:
- 消息优先级。 0 表示所有消息都有助于生成触发器消息。
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setTriggerMessagePriority
public void setTriggerMessagePriority(int priority) 抛出 MQException设置消息优先级,低于此优先级的消息不会导致触发消息。 即,队列管理器在决定是否生成触发器时忽略这些消息。- 参数:
priority-消息优先级。 0 表示所有消息都有助于生成触发器消息。- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
getTrigger类型
public int getTrigger类型 () 抛出 MQException指示写入触发器消息的条件。 触发器消息作为到达此队列的消息的结果而写入。- 返回:
- 可能的值为:
- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
setTrigger类型
public void setTrigger类型 (int 类型) 抛出 MQException设置写入触发器消息的条件。 触发器消息作为到达此队列的消息的结果而写入。- 参数:
type-可能的值为:- 抛出:
MQException-如果在关闭队列后调用此方法,以指示该队列不再可访问。
-