com.ibm.mq.pcf
类 PCFMessageAgent
- java.lang.Object
- com.ibm.mq.jmqi.JmqiObject
- com.ibm.mq.pcf.PCFAgent
- com.ibm.mq.pcf.PCFMessageAgent
公用类 PCFMessageAgent 扩展 PCFAgent
用于将 PCF 查询发送到队列管理器的通用代理程序。 与它所扩展的 PCFAgent 一样, PCFMessageAgent 会维护单个队列管理器连接,并提供用于发送 PCF 请求和返回响应消息集的简单方法。 PFMessageAgent 使用PCFMessage请求和应答的 类,这可避免暴露底层 PCF 头结构的详细信息。 PFMessageAgent 还提供了检查 PCF 响应的头内容并在响应指示错误时抛出 PCFException 的功能。 以下示例使用 PCFMessageAgent 来获取队列管理器上的本地队列列表。导入 com.ibm.mq.pcf. *; ... Try { PCFMessageAgent 代理程序 = 新的 PCFMessageAgent ("localhost" , 1414 , "CLIENT"); PCFMessage 请求 = 新的 PCFMessage (CMQCFC.MQCMD_INQUIRE_Q_NAMES); request.addParameter (CMQC.MQCA_Q_NAME, "*"); request.addParameter (CMQC.MQIA_Q_TYPE , MQC.MQQT_LOCAL); PCFMessage [] 响应 = agent.send (请求); 字符串 [] 名称 = (String []) 响应 [0] .getParameterValue (CMQCFC.MQCACF_Q_NAMES); for (int i = 0; i < names.length; i++) { System.out.println ("队列:" + 姓名 [i]); } } 捕获 (PCFException pcfe) { System.err.println ("PCF 错误:" + pcfe); } catch (MQException mqe) { System.err.println (mqe); } catch (IOException ioe) { System.err.println (ioe); }
-
字段摘要
-
从类 com.ibm.mq.pcf 继承的字段。PCFAgent
MAXIMUM_ALLOWED_PREFIX_LENGTH, replyQueueName
-
-
构造函数摘要
构造函数 构造函数和描述 PCFMessageAgent()缺省构造函数。PCFMessageAgent(MQQueueManager qmanager)使用现有队列管理器连接来初始化新的 PCFMessageAgent。PCFMessageAgent(java.lang.String qmanager)使用与队列管理器的绑定连接来初始化新的 PCFMessageAgent。PCFMessageAgent(java.lang.String host, int port, java.lang.String channel)使用与队列管理器的客户机连接来初始化新的 PCFMessageAgent。
-
方法摘要
所有方法 实例方法 具体方法 不推荐的方法 修饰符和类型 方法和描述 PCFMessage[]send(PCFMessage request)向已连接的队列管理器发送 PCF 请求并返回响应。PCFMessage[]send(PCFMessage request, boolean check)不推荐使用。使用 setCheckResponses 和 send (com.ibm.mq.pcf.PCFMessage)PCFMessage[]send(PCFMessage request, boolean check, boolean usePlatformSettings)不推荐使用。使用 setCheckResponses/setUsePlatformSettings 和 send (com.ibm.mq.pcf.PCFMessage)voidsetCheckResponses(boolean option)如果设置了此选项,那么如果响应在 MQCFH 头中包含带有原因码 MQRCCF_COMMAND_FAILED 的 PCF 消息,那么 send 方法将抛出 PCFException。voidsetUsePlatformSettings(boolean option)如果设置了此选项,那么发送方法会根据需要更改 PCFMessage 请求中包含的 MQCFH ,以与所连接队列管理器的平台相匹配。-
从类 com.ibm.mq.pcf.PCFAgent 继承的方法
connect, connect, connect, connect, connect, connect, disconnect, getCommandLevel, getExpiry, getModelQueueName, getPlatform, getQManagerName, getReplyQueueName, getReplyQueuePrefix, getWaitInterval, send, setCharacterSet, setEncoding, setModelQueueName, setReplyQueuePrefix, setWaitInterval, setWaitInterval
-
-
-
构造函数详细信息
PCFMessageAgent
public PCFMessageAgent ()
缺省构造函数。 初始化没有队列管理器连接的新 PCFMessageAgent。
PCFMessageAgent
public PCFMessageAgent (MQ队列管理器 qmanager) 抛出 MQException
使用现有队列管理器连接来初始化新的 PCFMessageAgent。- 参数:
qmanager-现有队列管理器连接- 抛出:
MQException-如果无法访问队列管理器
PCFMessageAgent
public PCFMessageAgent (java.lang.String host , int port, java.lang.String 通道) 抛出 MQException使用与队列管理器的客户机连接来初始化新的 PCFMessageAgent。- 参数:
host-队列管理器所在的主机名或 IP 地址port-队列管理器侦听入局通道连接的端口channel-要用于连接的客户机通道- 抛出:
MQException-如果无法建立连接
PCFMessageAgent
public PCFMessageAgent (java.lang.String qmanager) 抛出 MQException使用与队列管理器的绑定连接来初始化新的 PCFMessageAgent。- 参数:
qmanager-队列管理器的名称- 抛出:
MQException-如果无法建立连接
-
方法详细信息
发送
public PCFMessage[] send (PCFMessage 请求) 抛出 PCFException, MQException, java.io.IOException
向已连接的队列管理器发送 PCF 请求并返回响应。- 参数:
request-PCF 请求消息- 返回:
- PCF 响应消息的数组。 单个 PCF 请求可以生成多个应答。
- 抛出:
PCFException-如果响应指示 PCF 处理中发生错误MQException-如果请求或响应有问题java.io.IOException-如果读或写有问题- 另请参阅:
setCheckResponses(boolean),setUsePlatformSettings(boolean)
发送
public PCFMessage[] send (PCFMessage 请求, 布尔值检查) 抛出 PCFException, MQException, java.io.IOException
不推荐使用。 使用 setCheckResponses 和 send (com.ibm.mq.pcf.PCFMessage)向已连接的队列管理器发送 PCF 请求并返回响应。- 参数:
request-PCF 请求消息check-如果设置了此属性,那么代理程序将检查响应的 MQCFH 中的原因码,并在出现 MQRCCF_COMMAND_FAILED 时生成 PCFException- 返回:
- PCF 响应消息的数组。 单个 PCF 请求可以生成多个应答。
- 抛出:
PCFException-如果响应包含 MQRCCF_COMMAND_FAILEDMQException-如果请求或响应有问题java.io.IOException-如果读或写有问题- 另请参阅:
setCheckResponses(boolean),setUsePlatformSettings(boolean)
发送
public PCFMessage[] send (PCFMessage 请求, 布尔检查, 布尔值 usePlatformSettings) 抛出 PCFException, MQException, java.io.IOException
不推荐使用。 使用 setCheckResponses/setUsePlatformSettings 和 send (com.ibm.mq.pcf.PCFMessage)向已连接的队列管理器发送 PCF 请求并返回响应。- 参数:
request-PCF 请求消息check-如果设置了此属性,那么代理程序将检查响应的 MQCFH 中的原因码,并在出现 MQRCCF_COMMAND_FAILED 时生成 PCFExceptionusePlatformSettings-- 返回:
- PCF 响应消息的数组。 单个 PCF 请求可以生成多个应答。
- 抛出:
PCFException-如果响应包含 MQRCCF_COMMAND_FAILEDMQException-如果请求或响应有问题java.io.IOException-如果读或写有问题- 另请参阅:
setCheckResponses(boolean),setUsePlatformSettings(boolean)
setCheckResponses
public void setCheckResponses (布尔选项)
如果设置了此选项,那么如果响应在 MQCFH 头中包含带有原因码 MQRCCF_COMMAND_FAILED 的 PCF 消息,那么 send 方法将抛出 PCFException。 缺省情况下,将设置此选项。- 参数:
option-
setUsePlatformSettings
public void setUsePlatformSettings (布尔选项)
如果设置了此选项,那么发送方法会根据需要更改 PCFMessage 请求中包含的 MQCFH ,以与所连接队列管理器的平台相匹配。 例如,如果连接的队列管理器是 z/OS 队列管理器,并且请求 MQCFH 包含类型 MQCFT_COMMAND ,那么会发生此情况; 代理程序会将类型更改为类型 MQCFT_COMMAND_XR。 缺省情况下,将设置此选项。- 参数:
option-
-