Class: DeepConnect::Event::SessionRequest

Inherits:
Request show all
Defined in:
lib/deep-connect/event.rb

Direct Known Subclasses

SessionRequestNoReply

Instance Attribute Summary

Attributes inherited from Request

#args, #method

Attributes inherited from Event

#receiver, #seq, #session

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Request

#create_exception, #init_req, #initialize, materialize_sub, #reply, #request?, #result, #result=, #result_event, #set_seq

Methods inherited from Event

#initialize

Constructor Details

This class inherits a constructor from DeepConnect::Event::Request

Class Method Details

.receipt(session, seq, dummy, method, args = []) ⇒ Object



351
352
353
354
355
# File 'lib/deep-connect/event.rb', line 351

def SessionRequest.receipt(session, seq, dummy, method, args=[])
	rec = new(session, session, method, args)
	rec.set_seq(seq)
	rec
end

.request(session, method, args = []) ⇒ Object



345
346
347
348
349
# File 'lib/deep-connect/event.rb', line 345

def SessionRequest.request(session, method, args=[])
	req = new(session, session, method, args)
	req.init_req
	req
end

Instance Method Details

#inspectObject



370
371
372
373
# File 'lib/deep-connect/event.rb', line 370

def inspect
	#	sprintf "#<#{self.class}, session=#{@session}, seq=#{@seq}, method=#{@method.id2name}, args=#{@args.collect{|e| e.to_s}.join(', ')}>"
	sprintf "#<#{self.class}, session=#{@session}, seq=#{@seq}, method=#{@method.id2name}, args=...>"
end

#reply_classObject



357
358
359
# File 'lib/deep-connect/event.rb', line 357

def reply_class
	SessionReply
end

#serializeObject



361
362
363
364
365
366
367
368
# File 'lib/deep-connect/event.rb', line 361

def serialize
	args = @args.collect{|elm| 
	  Reference.serialize(@session.deep_space, elm)
	}
	sel = [self.class, @seq, @receiver.peer_id, @method]
	sel.push args
	sel
end