Class ThriftSerializationFormats

java.lang.Object
com.linecorp.armeria.common.thrift.ThriftSerializationFormats

public final class ThriftSerializationFormats extends Object
Provides Thrift-related SerializationFormat instances and their TProtocolFactorys.
  • Field Details

    • BINARY

      public static final SerializationFormat BINARY
      Thrift TBinary serialization format.
    • COMPACT

      public static final SerializationFormat COMPACT
      Thrift TCompact serialization format.
    • JSON

      public static final SerializationFormat JSON
      Thrift TJSON serialization format.
    • TEXT

      public static final SerializationFormat TEXT
      Thrift TText serialization format. This format is not optimized for performance or backwards compatibility and should only be used in non-production use cases like debugging.
    • TEXT_NAMED_ENUM

      public static final SerializationFormat TEXT_NAMED_ENUM
      Thrift TText serialization format with named enums. This format is not optimized for performance or backwards compatibility and should only be used in non-production use cases like debugging.
  • Method Details

    • protocolFactory

      @Deprecated public static org.apache.thrift.protocol.TProtocolFactory protocolFactory(SerializationFormat serializationFormat)
      Returns the TProtocolFactory for the specified SerializationFormat.
      Throws:
      IllegalArgumentException - if the specified SerializationFormat is not a known Thrift serialization format
    • protocolFactory

      public static org.apache.thrift.protocol.TProtocolFactory protocolFactory(SerializationFormat serializationFormat, int maxStringLength, int maxContainerLength)
      Returns the TProtocolFactory for the specified SerializationFormat, maxStringLength and maxContainerLength.

      Note that the maxStringLength and maxContainerLength is ignored if the TProtocolFactory does not support length limit.

      Parameters:
      serializationFormat - the serialization that TProtocolFactory supports.
      maxStringLength - the maximum allowed number of bytes to read from the transport for variable-length fields (such as strings or binary). 0 means unlimited.
      maxContainerLength - the maximum allowed number of containers to read from the transport for maps, sets and lists. 0 means unlimited.
      Throws:
      IllegalArgumentException - if the specified SerializationFormat is not a known Thrift serialization format
    • values

      public static Set<SerializationFormat> values()
      Retrieves all registered Thrift serialization formats.
      Returns:
      an view of the registered Thrift serialization formats.
    • isThrift

      public static boolean isThrift(SerializationFormat format)
      Returns whether the specified SerializationFormat is Thrift.