类 ProtobufDecoder.MessageDecoderFunction

java.lang.Object
cn.taketoday.http.codec.protobuf.ProtobufDecoder.MessageDecoderFunction
所有已实现的接口:
Function<cn.taketoday.core.io.buffer.DataBuffer,Iterable<? extends com.google.protobuf.Message>>
封闭类:
ProtobufDecoder

private class ProtobufDecoder.MessageDecoderFunction extends Object implements Function<cn.taketoday.core.io.buffer.DataBuffer,Iterable<? extends com.google.protobuf.Message>>
  • 字段详细资料

    • elementType

      private final cn.taketoday.core.ResolvableType elementType
    • maxMessageSize

      private final int maxMessageSize
    • output

      @Nullable private cn.taketoday.core.io.buffer.DataBuffer output
    • messageBytesToRead

      private int messageBytesToRead
    • offset

      private int offset
  • 构造器详细资料

    • MessageDecoderFunction

      public MessageDecoderFunction(cn.taketoday.core.ResolvableType elementType, int maxMessageSize)
  • 方法详细资料

    • apply

      public Iterable<? extends com.google.protobuf.Message> apply(cn.taketoday.core.io.buffer.DataBuffer input)
      指定者:
      apply 在接口中 Function<cn.taketoday.core.io.buffer.DataBuffer,Iterable<? extends com.google.protobuf.Message>>
    • readMessageSize

      private boolean readMessageSize(cn.taketoday.core.io.buffer.DataBuffer input)
      Parse message size as a varint from the input stream, updating messageBytesToRead and offset fields if needed to allow processing of upcoming chunks. Inspired from CodedInputStream.readRawVarint32(int, java.io.InputStream)
      返回:
      {code true} when the message size is parsed successfully, {code false} when the message size is truncated
      另请参阅:
    • discard

      public void discard()