com.ibm.mq

类 MQTopic



  • 公共类 MQTopic
    扩展 MQDestination
    MQTopic 是 MQDestination 的子类,提供针对 IBM MQ 主题的设置,查询,放置 (发送/发布) 和获取 (接收/预订) 操作。 集合和查询功能继承自 MQManagedObject。 而 put 和 get 功能是从 MQDestination 继承而来。

    使用 MQTopic 构造函数或 MQQueueManager#accessQueue 方法来获取对 MQTopic 对象的访问权。 只能为发布或预订目的访问 MQTopic 对象,不能同时为两种目的进行访问。

    当用于接收消息时,MQTopic 对象可以使用非受管或受管预订进行创建并创建为持久或非持久订户 - 对于这些不同方案提供了多个超负荷构造方法。

    另请参阅:
    MQDestination, MQQueue, MQQueueManager
    • 构造函数详细信息

      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int openAs,
                       int 选项)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 可根据 openAs 参数的值为发布或预订打开 MQTopic 对象。 该值指示使用 options 参数-这可能映射到用于发布的等效 CMQC#MQOO 选项或用于预订的等效 CMQC#MQSO 选项。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,放入消息,查询主题的属性或设置主题的属性。

        MQTopic 对象不能同时用于发布和预订。 因此,构造函数将使用提供的主题名称 (topicName) 和主题对象 (topicObject) 为发布或预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,商店 (MQQueue) 将由队列管理器管理和拥有。 因此,此构造函数只能用于创建受管预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        openAs -指示是否为发布或预订打开主题。 该参数可能包含下列其中一个有效选项:只能为发布或预订打开主题对象。 指定多个选项将导致错误情况。
        options -用于控制发布或预订的主题打开的选项。 以下选项有效:如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。 请参阅 IBM MQ 文档的 "MQI 应用程序参考" 部分 以获取这些选项的更完整描述。

        但是,打开要预订的主题时,下面显示了以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。

        如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        打开预订主题时,构造函数只能迎合受管的非持久预订。 因此,将强制实施以下选项:

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(String, String, int, int)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int openAs,
                       int 选项,
                       java.lang.String alternateUser标识)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 可根据 openAs 参数的值为发布或预订打开 MQTopic 对象。 该值指示使用 options 参数-这可能映射到用于发布的等效 CMQC#MQOO 选项或用于预订的等效 CMQCMQSO 选项。

        如果在 options 参数中指定了 CMQC.MQOO_ALTERNATE_USER_AUTHORITYCMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,放入消息,查询主题的属性或设置主题的属性。

        MQTopic 对象不能同时用于发布和预订。 因此,构造函数将使用提供的主题名称 (topicName) 和主题对象 (topicObject) 为发布或预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,商店 (MQQueue) 将由队列管理器管理和拥有。 因此,此构造函数只能用于创建受管预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        openAs -指示是否为发布或预订打开主题。 该参数可能包含下列其中一个有效选项:只能为发布或预订打开主题对象。 指定多个选项将导致错误情况。
        options -用于控制发布或预订的主题打开的选项。 以下选项有效:如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。 请参阅 WIBM MQ 文档的 "MQI 应用程序参考" 部分 以获取这些选项的更完整描述。

        但是,打开要预订的主题时,下面显示了以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。

        如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        打开预订主题时,构造函数只能迎合受管的非持久预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQOO_ALTERNATE_USER_AUTHORITYCMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果未指定 CMQC.MQOO_ALTERNATE_USER_AUTHORITYCMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么可以将此参数留空 (或为空)。

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(String, String, int, int, String)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项,
                       java.lang.String alternateUser标识,
                       java.lang.String subscriptionName)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 subscriptionName 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 CMQC#MQSO 值。

        如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,商店 (MQQueue) 将由队列管理器管理和拥有。 因此,此构造函数只能用于创建受管预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        构造函数只能迎合受管预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果是 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,此参数可以留空 (或为空)。

        subscriptionName -仅当 options 参数指定了 CMQC.MQSO_DURABLE时,此字段才是必需的,但如果提供的参数也将由 CMQC.MQSO_NON_DURABLE 的队列管理器使用。

        对于 CMQC.MQSO_DURABLE 预订是一种方法,如果您已关闭预订的句柄或已从队列管理器断开连接,那么在创建预订后,您可以通过此方法来标识预订以将其恢复。

        如果使用 CMQC.MQSO_ALTER 选项改变现有预订,那么无法更改预订名称

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(String, String, int, String, String)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项,
                       java.lang.String alternateUser标识,
                       java.lang.String subscriptionName,
                       java.util.Hashtable<java.lang.String,java.lang.Object> parameters)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 subscriptionName 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 CMQC#MQSO 值。

        如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,商店 (MQQueue) 将由队列管理器管理和拥有。 因此,此构造函数只能用于创建受管预订。

        还可以使用 parameters 散列表来指定额外的非标准输入和输出参数。 如果属性是输出字段,那么仅当最初在输入时指定了该属性时,才会在散列表中填充该属性。 基本上,不会将任何新的 "键/值" 对添加到散列表-仅已更新的现有对。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        构造函数只能迎合受管预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果是 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,此参数可以留空 (或为空)。

        subscriptionName -仅当 options 参数指定了 CMQC.MQSO_DURABLE时,此字段才是必需的,但如果提供的参数也将由 CMQC.MQSO_NON_DURABLE 的队列管理器使用。

        对于 CMQC.MQSO_DURABLE 预订是一种方法,如果您已关闭预订的句柄或已从队列管理器断开连接,那么在创建预订后,您可以通过此方法来标识预订以将其恢复。

        如果使用 CMQC.MQSO_ALTER 选项改变现有预订,那么无法更改预订名称

        parameters -散列表可用于指定预订请求的非标准输入和输出参数。 如果属性是输出字段,那么仅当最初在输入时指定了该属性时,才会在散列表中填充该属性。 因此,将不会向散列表添加新的键/值对-仅更新现有对。 以下密钥名称有效并且可以指定:全部指定为 String 类型属性。 可以使用相应的语言转换例程将值转换为相关类型。
        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(String, String, int, String, String, Hashtable)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       MQDestination 目标,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 destination 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 CMQC#MQSO 值。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,用户提供,管理和拥有预订存储 (destination)。 队列管理器对此对象不承担任何责任,而是由用户来正确处置该对象。 可用于此预订的任何消息都将传递到指定的目标。

        destination 参数必须有效,不能留空或为空。 因此,此构造函数只能用于创建非受管非持久预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        destination -应接收发布的现有 MQDestination 对象。 对于 WebSphere MQ v7.0 ,这将始终映射到 MQQueue 对象。 但是,将来可能存在其他目标类型。

        可通过调用 MQQueueManager #accessQueue 方法或 MQQueue 构造函数来创建 MQDestination (MQQueue) 对象。

        相应的目标作为 UnmanagedDestinationReference 属性作为 MQTopic 对象中的引用保存 (请参阅 getUnmanagedDestinationReference())。

        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        构造函数只能迎合非受管非持久预订。 因此,将强制实施以下选项:

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(MQDestination, String, String, int)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       MQDestination 目标,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项,
                       java.lang.String alternateUser标识)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 destination 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 CMQC#MQSO 值。

        如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,用户提供,管理和拥有预订存储 (destination)。 队列管理器对此对象不承担任何责任,而是由用户来正确处置该对象。 可用于此预订的任何消息都将传递到指定的目标。

        destination 参数必须有效,不能留空或为空。 因此,此构造函数只能用于创建非受管非持久预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        destination -应接收发布的现有 MQDestination 对象。 对于 WebSphere MQ v7.0 ,这将始终映射到 MQQueue 对象。 但是,将来可能存在其他目标类型。

        可通过调用 MQQueueManager #accessQueue 方法或 MQQueue 构造函数来创建 MQDestination (MQQueue) 对象。

        相应的目标作为 UnmanagedDestinationReference 属性作为 MQTopic 对象中的引用保存 (请参阅 getUnmanagedDestinationReference())。

        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项也可用。

        构造函数只能迎合非受管非持久预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果是 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,此参数可以留空 (或为空)。

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(MQDestination, String, String, int, String)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       MQDestination 目标,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项,
                       java.lang.String alternateUser标识,
                       java.lang.String subscriptionName)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 destinationsubscriptionName 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 MQSO 值。

        如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,用户提供,管理和拥有预订存储 (destination)。 队列管理器对此对象不承担任何责任,而是由用户来正确处置该对象。 可用于此预订的任何消息都将传递到指定的目标。

        destination 参数必须有效,不能留空或为空。 因此,此构造函数只能用于创建非受管预订。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        destination -应接收发布的现有 MQDestination 对象。 对于 WebSphere MQ v7.0 ,这将始终映射到 MQQueue 对象。 但是,将来可能存在其他目标类型。

        可通过调用 MQQueueManager #accessQueue 方法或 MQQueue 构造函数来创建 MQDestination (MQQueue) 对象。

        相应的目标作为 UnmanagedDestinationReference 属性作为 MQTopic 对象中的引用保存 (请参阅 getUnmanagedDestinationReference())。

        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项包括:

        构造函数只能迎合非受管预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果是 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,此参数可以留空 (或为空)。

        subscriptionName -仅当 options 参数指定了 CMQC.MQSO_DURABLE时,此字段才是必需的,但如果提供的参数也将由 CMQC.MQSO_NON_DURABLE 的队列管理器使用。

        对于 CMQC.MQSO_DURABLE 预订是一种方法,如果您已关闭预订的句柄或已从队列管理器断开连接,那么在创建预订后,您可以通过此方法来标识预订以将其恢复。

        如果使用 CMQC.MQSO_ALTER 选项改变现有预订,那么无法更改预订名称

        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(MQDestination, String, String, int, String, String)
      • MQTopic

        公共 MQTopic (MQQueueManager qMgr,
                       MQDestination 目标,
                       java.lang.String topicName,
                       java.lang.String topicObject,
                       int 选项,
                       java.lang.String alternateUser标识,
                       java.lang.String subscriptionName,
                       java.util.Hashtable<java.lang.String,java.lang.Object> parameters)
                抛出 MQException
        建立对指定队列管理器上的 IBM MQ 主题的访问权。 destinationsubscriptionName 参数的存在指示此构造函数只能用于打开预订的主题。 因此, options 参数始终映射到等效的 CMQC#MQSO 值。

        如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么将使用 alternateUserId 参数来检查必需的授权。

        指定的选项允许 MQTopic 对象用于获取或浏览消息,查询主题的属性或设置主题的属性。

        构造函数使用提供的主题名称 ( topicName) 和主题对象 (topicObject) 为预订创建 MQTopic 对象。

        完整主题名称由前面两个部分的并置提供。 如果字段的第一个字符既不是空格也不是空字符,那么存在部分。 如果这两个部分都存在,那么将在生成的组合主题中在它们之间插入 "/" 字符。 如果仅存在其中一个部分,那么会将其用作主题。 这些部件按下面列出的顺序并置。

        • topicObject中指定的主题对象的 TOPICSTR 参数的值。
        • topicName,如果为该字符串提供的长度不为零。
        如果 topicName中存在通配符,那么可以使用 options 参数中指定的通配符选项来控制这些通配符的解释。

        为预订创建 MQTopic 时,用户提供,管理和拥有预订存储 (destination)。 队列管理器对此对象不承担任何责任,而是由用户来正确处置该对象。 可用于此预订的任何消息都将传递到指定的目标。

        destination 参数必须有效,不能留空或为空。 因此,此构造函数只能用于创建非受管预订。

        还可以使用 parameters 散列表来指定额外的非标准输入和输出参数。 如果属性是输出字段,那么仅当最初在输入时指定了该属性时,才会在散列表中填充该属性。 基本上,不会将任何新的 "键/值" 对添加到散列表-仅已更新的现有对。

        参数:
        qMgr -表示主题所在的队列管理器的对象。
        destination -应接收发布的现有 MQDestination 对象。 对于 WebSphere MQ v7.0 ,这将始终映射到 MQQueue 对象。 但是,将来可能存在其他目标类型。

        可通过调用 MQQueueManager #accessQueue 方法或 MQQueue 构造函数来创建 MQDestination (MQQueue) 对象。

        相应的目标作为 UnmanagedDestinationReference 属性作为 MQTopic 对象中的引用保存 (请参阅 getUnmanagedDestinationReference())。

        topicName -要发布或预订的主题字符串。 topicName 参数直接映射到 MQSD 的 ObjectString 字段 (请参阅 MQSD.getObjectString())。 使用的完整主题名称是 topicObjecttopicName 参数的组合。
        topicObject -在本地队列管理器上定义的主题对象的名称。 如果此属性与非零长度 topicName一起指定,那么指定的 topicName 将以分隔符附加到主题对象中包含的主题字符串。 这是发布或预订的完整主题字符串。

        该参数既是输入参数又是输出参数。 成功完成此方法后,最接近的匹配管理节点将位于主题层次结构中并返回。 因此,包含的主题对象可能与最初指定的主题对象不同。

        options -打开预订主题时,将显示以下有效选项。 如果需要多个选项,那么可以使用按位 OR 运算符将值相加或组合。如果未指定任何这些选项,那么将采用 CMQC.MQSO_CREATE + CMQC.MQSO_ALTER 。 其他有效选项包括:

        构造函数只能迎合非受管预订。 因此,将强制实施以下选项:

        alternateUserId -如果在 options 参数中指定了 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,那么此参数指定用于检查完成操作所需的权限的备用用户标识。

        如果是 CMQC.MQSO_ALTERNATE_USER_AUTHORITY ,此参数可以留空 (或为空)。

        subscriptionName -仅当 options 参数指定了 CMQC.MQSO_DURABLE时,此字段才是必需的,但如果提供的参数也将由 CMQC.MQSO_NON_DURABLE 的队列管理器使用。

        对于 CMQC.MQSO_DURABLE 预订是一种方法,如果您已关闭预订的句柄或已从队列管理器断开连接,那么在创建预订后,您可以通过此方法来标识预订以将其恢复。

        如果使用 CMQC.MQSO_ALTER 选项改变现有预订,那么无法更改预订名称

        parameters -散列表可用于指定预订请求的非标准输入和输出参数。 如果属性是输出字段,那么仅当最初在输入时指定了该属性时,才会在散列表中填充该属性。 因此,将不会向散列表添加新的键/值对-仅更新现有对。 以下密钥名称有效并且可以指定:全部指定为 String 类型属性。 可以使用相应的语言转换例程将值转换为相关类型。
        抛出:
        MQException -如果调用失败。
        另请参阅:
        MQQueueManager.accessTopic(MQDestination, String, String, int, String, String, Hashtable)
© Copyright IBM Corp. 2008 , 2016. All Rights Reserved.