com.ibm.mq.headers

接口 MQHeaderFactory

  • 所有已知实现类:
    PCFHeaderFactory, PCFHeaderFactory


    公共接口 MQHeaderFactory
    MQHeaderFactory 用于动态创建新的 MQHeader 实例。 这在对消息中的头内容进行解码 (解析) 时使用,或者用于在工具应用程序中创建新头实例之类的任务。 例如,工具应用程序可能提供可用于编写消息的头类型目录。 大多数应用程序将不需要直接使用 MQHeaderFactory 接口; MQHeaderRegistry 封装了一组涵盖标准 MQ 头类型的 MQHeaderFactory 实例,并且可以直接注册新的头类型,而无需定义新的 MQHeaderFactory 类型。

    单个 MQHeaderFactory 可以处理单个消息格式或多个消息格式。 MQHeaderFactories 已向注册表注册,该注册表允许按格式或类型进行查找。 缺省 MQHeaderRegistry 实例具有针对标准 MQ 头类型和格式 (包括 PCF) 的预注册工厂。

    另请参阅:
    MQHeaderRegistry, MQHeaderIterator
    • 方法详细信息

      • create

        MQHeader create (java.lang.String 类型)
                 抛出 java.lang.InstantiationException
        参数:
        type -
        返回:
        指定类型的 MQHeader 实例。 可以从 getSupportedTypes 方法获取头工厂已知的类型。 这些类型对应于 MQHeader 实例上的 type 方法返回的值。
        抛出:
        java.lang.InstantiationException
      • 解码

        MQHeader 解码 (MQHeaderContext 消息)
                 抛出 java.lang.Exception
                        MQDataException,
                        java.io.IOException
        对消息中的 MQHeader 实例进行解码 (解析)。 消息上下文对象包含与消息或字节流中的当前位置相关联的格式,编码和 CCSID。 MQHeaderFactory 实现此方法的操作本质上是:
        1. 标识消息中下一个出现的头类型。 这可能由工厂直接识别,并与格式相关联; 或者 MQHeaderFactory 可能需要查看消息内容以检测类型。
        2. 确定了正确的类型后,实例化该类型的 MQHeader 实例。
        3. 在消息上调用头对象的 read 方法。
        4. (可选) 更新消息上下文对象的格式,编码和 characterSet 成员。
        5. 返回头实例。
        如果没有更多头,或者此 MQHeaderFactory 无法在消息中的当前位置标识头,那么此方法可能会返回 null。
        参数:
        message -头上下文。
        返回:
        解析的 MQHeader
        抛出:
        java.lang.Exception -(允许 com.ibm.pcf 类抛出 MQException)
        MQDataException
        java.io.IOException
      • getSupported格式

        java.util.Collection<?> getSupportedFormats()
        返回:
        与此 MQHeaderFactory支持的头类型相关联的格式名称集。 MQHeaderFactory 实例能够对这些格式的消息进行解码。
      • getSupported类型

        java.util.Collection<?> getSupportedTypes()
        返回:
        此 MQHeaderFactory支持的一组头类型。 MQHeaderFactory 实例可以创建这些类型的新实例。
© Copyright IBM Corp. 2008 , 2016. All Rights Reserved.