Class: XGen::Mongo::Driver::MessageHeader
- Inherits:
- 
      Object
      
        - Object
- XGen::Mongo::Driver::MessageHeader
 
- Defined in:
- lib/mongo/message/message_header.rb
Constant Summary collapse
- HEADER_SIZE =
- 16
Instance Method Summary collapse
- #dump ⇒ Object
- 
  
    
      #initialize  ⇒ MessageHeader 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of MessageHeader. 
- #read_header(db) ⇒ Object
Constructor Details
#initialize ⇒ MessageHeader
Returns a new instance of MessageHeader.
| 30 31 32 | # File 'lib/mongo/message/message_header.rb', line 30 def initialize() @buf = ByteBuffer.new end | 
Instance Method Details
#dump ⇒ Object
| 49 50 51 | # File 'lib/mongo/message/message_header.rb', line 49 def dump @buf.dump end | 
#read_header(db) ⇒ Object
| 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | # File 'lib/mongo/message/message_header.rb', line 34 def read_header(db) @buf.rewind read = db.receive_full(HEADER_SIZE) @buf.put_array(read.unpack("C*")) LOG.debug "header: #{read.inspect}\n" raise "BAD SIZE" unless read.length == HEADER_SIZE raise "Short read for DB response header: expected #{HEADER_SIZE} bytes, saw #{@buf.size}" unless @buf.size == HEADER_SIZE @buf.rewind @size = @buf.get_int @request_id = @buf.get_int @response_to = @buf.get_int @op = @buf.get_int self end |