com.ibm.mq.headers.pcf

類別 PCFMessageAgent



  • public class PCFMessageAgent
    延伸 PCFAgent
    用於將 PCF 查詢傳送至佇列管理程式的一般用途代理程式。 如同它所延伸的 PCFAgent , PCFMessageAgent 會維護單一佇列管理程式連線,並提供簡單的方法來傳送 PCF 要求及傳回回應訊息集。 PCFMessageAgent 將 PCFMessage 類別用於要求及回覆,這樣可避免暴露於基礎 PCF 標頭結構的詳細資料。 PCFMessageAgent 也可讓您檢查 PCF 回應的標頭內容,並在回應指出錯誤時擲出 PCFException。 下列範例使用 PCFMessageAgent 來取得佇列管理程式上本端佇列的清單。
         import com.ibm.mq.headers.pcf. *;
    
         ...
    
         嘗試
         {
           PCFMessageAgent agent = new PCFMessageAgent ("localhost" , 1414 , "CLIENT");
           PCFMessage request = new PCFMessage (CMQCFC.MQCMD_INQUIRE_Q_NAMES);
    
           request.addParameter (CMQC.MQCA_Q_NAME, "*");
           request.addParameter (CMQC.MQIA_Q_TYPE , MQC.MQQT_LOCAL);
    
           PCFMessage [] responses = agent.send (request);
           String [] names = (String []) responses [0] .getParameterValue (CMQCFC.MQCACF_Q_NAMES);
    
           for (int i = 0; i < names.length; i++)
           {
             System.out.println ("Queue:" + names [i]);
           }
         }
    
         catch (PCFException pcfe)
         {
           System.err.println ("PCF error:" + pcfe);
         }
    
         catch (MQDataException mqe)
         {
           System.err.println (mqe);
         }
    
         catch (IOException ioe)
         {
           System.err.println (ioe);
         }
    
     
    • 建構子詳細資料

      • PCFMessageAgent

        public PCFMessageAgent ()
        預設建構子。 在沒有佇列管理程式連線的情況下起始設定新的 PCFMessageAgent。
      • PCFMessageAgent

        public PCFMessageAgent (MQQueueManager qmanager)
                        throws MQDataException
        使用現有的佇列管理程式連線來起始設定新的 PCFMessageAgent。
        參數:
        qmanager-現有的佇列管理程式連線
        擲出:
        MQDataException-如果無法存取佇列管理程式
      • PCFMessageAgent

        public PCFMessageAgent (java.lang.String host ,
                               int port ,
                               java.lang.String channel)
                        throws MQDataException
        使用用戶端與佇列管理程式的連線來起始設定新的 PCFMessageAgent。
        參數:
        host-佇列管理程式所在的主機名稱或 IP 位址
        port-佇列管理程式用來接聽送入通道連線的埠
        channel-用於連線的用戶端通道
        擲出:
        MQDataException-如果無法建立連線
      • PCFMessageAgent

        public PCFMessageAgent (java.lang.String qmanager)
                        throws MQDataException
        使用與佇列管理程式的連結連線來起始設定新的 PCFMessageAgent。
        參數:
        qmanager-佇列管理程式的名稱
        擲出:
        MQDataException-如果無法建立連線
    • 方法詳細資料

      • 傳送

        public PCFMessage[] send (PCFMessage request ,
                                 布林檢查)
                          throws PCFExceptionMQDataException,
                                 java.io.IOException
        已淘汰。 使用 setCheckResponses 並傳送 (com.ibm.mq.headers.pcf.PCFMessage)
        將 PCF 要求傳送至連接的佇列管理程式,並傳回回應。
        參數:
        request-PCF 要求訊息
        check-如果設定,則代理程式會檢查回應的 MQCFH 中的原因碼,並在 MQRCCF_COMMAND_FAILED 出現時產生 PCFException
        傳回:
        PCF 回應訊息的陣列。 單一 PCF 要求可以產生多個回覆。
        擲出:
        PCFException-如果回應包括 MQRCCF_COMMAND_FAILED
        MQDataException-如果要求或回應有問題
        java.io.IOException-如果在讀取或寫入時發生問題
        另請參閱:
        setCheckResponses(boolean), setUsePlatformSettings(boolean)
      • 傳送

        public PCFMessage[] send (PCFMessage request ,
                                 布林檢查,
                                 boolean usePlatformSettings)
                          throws PCFExceptionMQDataException,
                                 java.io.IOException
        已淘汰。 使用 setCheckResponses/setUsePlatformSettings 並傳送 (com.ibm.mq.headers.pcf.PCFMessage)
        將 PCF 要求傳送至連接的佇列管理程式,並傳回回應。
        參數:
        request-PCF 要求訊息
        check-如果設定,則代理程式會檢查回應的 MQCFH 中的原因碼,並在 MQRCCF_COMMAND_FAILED 出現時產生 PCFException
        usePlatformSettings-
        傳回:
        PCF 回應訊息的陣列。 單一 PCF 要求可以產生多個回覆。
        擲出:
        PCFException-如果回應包括 MQRCCF_COMMAND_FAILED
        MQDataException-如果要求或回應有問題
        java.io.IOException-如果在讀取或寫入時發生問題
        另請參閱:
        setCheckResponses(boolean), setUsePlatformSettings(boolean)
      • setCheckResponses

        public void setCheckResponses (boolean option)
        如果設定此選項,則當回應在 MQCFH 標頭中包含原因碼為 MQRCCF_COMMAND_FAILED 的 PCF 訊息時,傳送方法會擲出 PCFException。 依預設,會設定此選項。
        參數:
        option-
      • setUsePlatformSettings

        public void setUsePlatformSettings (boolean option)
        如果設定此選項,則必要的話,傳送方法會變更 PCFMessage 要求中包含的 MQCFH ,以符合所連接佇列管理程式的平台。 例如,如果連接的佇列管理程式是 z/OS 佇列管理程式,且要求 MQCFH 包含 MQCFT_COMMAND 類型,則會發生此情況; 代理程式會將類型變更為 MQCFT_COMMAND_XR 類型。 依預設,會設定此選項。
        參數:
        option-
© Copyright IBM Corp. 2008 , 2016. All Rights Reserved.