Method: Thrift::BinaryProtocol#read_message_begin

Defined in:
lib/thrift/protocol/binary_protocol.rb

#read_message_beginObject



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/thrift/protocol/binary_protocol.rb', line 119

def read_message_begin
  version = read_i32
  if version < 0
    if (version & VERSION_MASK != VERSION_1)
      raise ProtocolException.new(ProtocolException::BAD_VERSION, 'Missing version identifier')
    end
    type = version & TYPE_MASK
    name = read_string
    seqid = read_i32
    [name, type, seqid]
  else
    if strict_read
      raise ProtocolException.new(ProtocolException::BAD_VERSION, 'No version identifier, old protocol client?')
    end
    name = trans.read_all(version)
    type = read_byte
    seqid = read_i32
    [name, type, seqid]
  end
end