Class: Tair::Request
- Inherits:
-
Object
show all
- Defined in:
- lib/tair/request.rb
Defined Under Namespace
Classes: Header, PacketCodeNotImplemented
Constant Summary
collapse
- TAIR_PACKET_FLAG =
0x6d426454
- MAX_INT32 =
0x7FFFFFFF
Instance Attribute Summary collapse
Instance Method Summary
collapse
Instance Attribute Details
#namespace ⇒ Object
Returns the value of attribute namespace.
5
6
7
|
# File 'lib/tair/request.rb', line 5
def namespace
@namespace
end
|
Instance Method Details
#body ⇒ Object
15
16
17
18
|
# File 'lib/tair/request.rb', line 15
def body
BinData::Record.new
end
|
#encode ⇒ Object
7
8
9
10
11
12
|
# File 'lib/tair/request.rb', line 7
def encode
body = self.body
= self.
.body_len = body.do_num_bytes
.to_binary_s << body.to_binary_s
end
|
21
22
23
|
# File 'lib/tair/request.rb', line 21
def
@header ||= Header.new(req_id: req_id, packet_code: packet_code)
end
|
#inspect ⇒ Object
60
61
62
|
# File 'lib/tair/request.rb', line 60
def inspect
"[#{self.class.name}] #{encode.each_codepoint.to_a.map {|x| x.to_s(16) }.join(" ") }"
end
|
#packet_code ⇒ Object
26
27
28
29
30
31
32
|
# File 'lib/tair/request.rb', line 26
def packet_code
if self.class.const_defined? :PACKET_CODE
return self.class.const_get :PACKET_CODE
end
raise PacketCodeNotImplemented.new('you should implement packet code in sub classes')
end
|
#req_id ⇒ Object
45
46
47
|
# File 'lib/tair/request.rb', line 45
def req_id
@req_id ||= _gen_req_id
end
|