Class: KineticRuby::PDU

Inherits:
Object
  • Object
show all
Defined in:
lib/kinetic_pdu.rb

Instance Method Summary collapse

Constructor Details

#initialize(logger, raw = nil) ⇒ PDU

Returns a new instance of PDU.



7
8
9
10
11
# File 'lib/kinetic_pdu.rb', line 7

def initialize(logger, raw=nil)
  raise "Invalid logger specified!" unless logger
  @logger = logger
  parse(raw)
end

Instance Method Details

#lengthObject Also known as: size



20
21
22
23
24
25
26
# File 'lib/kinetic_pdu.rb', line 20

def length
  len = 0
  len += HEADER_LENGTH if @header
  len += @header[:protobuf_length] if @protobuf
  len += @header[:value_length] if @value
  return len
end

#parse(raw) ⇒ Object



13
14
15
16
17
18
# File 'lib/kinetic_pdu.rb', line 13

def parse(raw)
  @header = parse_header(raw)
  @protobuf = parse_protobuf(raw) if @header
  @value = parse_value(raw) if (@header && @protobuf)
  return (@header && @protobuf && @value)
end