Package org.microproxy.contentviews
package org.microproxy.contentviews
-
ClassDescriptionTurns a message body into readable text: protobuf as YAML with field numbers, gRPC message by message, msgpack, form data, GraphQL, and so on.What a view knows about a body besides its bytes.A set of
ContentViews, and the choice among them.A body rendered by a view.Data that a decoder orContentViewcannot make sense of: malformed protobuf, a truncated gRPC frame, an unknown compression, invalid msgpack, JSON or multipart data.gRPC's message framing: a body is a sequence of messages, each a compressed flag (one byte), a length (four bytes, big-endian) and that many bytes of payload, compressed with the coding thegrpc-encodingheader names when the flag is set.One entry of a status's details: agoogle.protobuf.Any.One framed message, as it is on the wire.Agoogle.rpc.Status, as servers send it ingrpc-status-details-bin.Decodes and encodes protobuf messages without generated code, and usually without a schema:One field of a decoded protobuf message, as it appeared on the wire.A decoded protobuf message: its fields in the order they appeared on the wire.Protobuf type definitions, read from aFileDescriptorSet(whatprotoc --descriptor_set_out=types.desc --include_importswrites), so that messages decode with field names, enum names and declared types instead of guesses, and gRPC calls decode with their method's input and output types:An enum type.A field of a message type.A message type: its full name and fields.An RPC method of a service.The types a field can be declared with, as numbered indescriptor.proto.One value of a protobuf field: what its wire type says, plus how a length-delimited value was understood.Length-delimited bytes (wire type 2) that are neither text nor a message, or that a schema declares asbytes.Four bytes (wire type 5):fixed32,sfixed32orfloat.Eight bytes (wire type 1):fixed64,sfixed64ordouble.A group (wire types 3 and 4), proto2's deprecated way of nesting a message.A nested message (wire type 2).A packed repeated scalar field (wire type 2): severalProtoValue.Varint,ProtoValue.Fixed32orProtoValue.Fixed64values in one length-delimited value.Length-delimited UTF-8 text (wire type 2): astring, or bytes that read as text.A varint (wire type 0):int32,int64,uint32,uint64,sint32,sint64,boolor an enum.