Module  java.corba
软件包  org.omg.IOP

Interface CodecOperations

  • All Known Subinterfaces:
    Codec


    public interface CodecOperations
    ORB服务使用的IOR组件和服务上下文数据的格式通常定义为编码IDL定义数据类型实例的CDR封装。 Codec提供了一种在IDL数据类型与其CDR封装表示之间传输这些组件的机制。

    A Codec是从CodecFactory获得的。 CodecFactory是通过致电ORB.resolve_initial_references( "CodecFactory" )

    • 方法摘要

      所有方法  接口方法  抽象方法 
      Modifier and Type 方法 描述
      Any decode​(byte[] data)
      根据对这个 Codec有效的编码格式,将给定的字节数组解码为 Codec
      Any decode_value​(byte[] data, TypeCode tc)
      根据给定的 TypeCode和对这个 Codec有效的编码格式,将给定的字节数组解码为 Codec
      byte[] encode​(Any data)
      根据对这个 Codec有效的编码格式,将给定的任何值转换为字节数组。
      byte[] encode_value​(Any data)
      基于对该编解码器有效的编码格式,将给定的任何数据转换为字节数组。
    • 方法详细信息

      • encode

        byte[] encode​(Any data)
               throws InvalidTypeForEncoding
        将给定的任何值转换为基于 Codec有效的编码格式的字节数组。
        参数
        data - 以任何形式编码为字节数组的数据。
        结果
        一个字节数组,包含编码的Any。 该字节数组包含TypeCode和类型的数据。
        异常
        InvalidTypeForEncoding - 如果该类型对于 Codec有效的编码格式无效,则 Codec
      • decode

        Any decode​(byte[] data)
            throws FormatMismatch
        基于对这个 Codec有效的编码格式,将给定的字节数组解码为 Codec
        参数
        data - 以字节数组的形式将要解码为Any的数据。
        结果
        An包含来自解码字节数组的数据。
        异常
        FormatMismatch - 如果字节数组不能解码成Any,则抛出。
      • encode_value

        byte[] encode_value​(Any data)
                     throws InvalidTypeForEncoding
        基于对该编解码器有效的编码格式,将给定的任何数据转换为字节数组。 只有来自Any的数据被编码,而不是TypeCode
        参数
        data - 要编码为字节数组的以Any形式的数据。
        结果
        一个包含来自编码任何数据的字节数组。
        异常
        InvalidTypeForEncoding - 如果该类型对于 Codec有效的编码格式无效,则 Codec
      • decode_value

        Any decode_value​(byte[] data,
                         TypeCode tc)
                  throws FormatMismatch,
                         TypeMismatch
        根据给定的 TypeCode和对这个 Codec有效的编码格式,将给定的字节数组解码为 Codec
        参数
        data - 以字节数组的形式将要解码为Any的数据。
        tc - 用于解码数据的TypeCode。
        结果
        An包含来自解码字节数组的数据。
        异常
        FormatMismatch - 如果字节数组不能解码成Any,则抛出。
        TypeMismatch