Brunet.Symphony.TraceRpcHandler.EchoSendHandler.HandleReply C# (CSharp) Method

HandleReply() public method

public HandleReply ( ReqrepManager man, ReqrepManager rt, int mid, PType prot, MemBlock payload, ISender returnpath, ReqrepManager statistics, object state ) : bool
man Brunet.Messaging.ReqrepManager
rt Brunet.Messaging.ReqrepManager
mid int
prot Brunet.Util.PType
payload Brunet.Util.MemBlock
returnpath ISender
statistics Brunet.Messaging.ReqrepManager
state object
return bool
    public bool HandleReply(ReqrepManager man, ReqrepManager.ReqrepType rt,
                   int mid,
                   PType prot,
                   MemBlock payload, ISender returnpath,
                   ReqrepManager.Statistics statistics,
                   object state) {
      DateTime reply_time = DateTime.UtcNow;
      
      ListDictionary res_dict = new ListDictionary();
      AHSender ah_rp = returnpath as AHSender;
      if( ah_rp != null ) {
        res_dict["target"] = ah_rp.Destination.ToString();
      }
      //Here are the number of microseconds
      res_dict["musec"] = (int)( 1000.0 * ((reply_time - _start_time).TotalMilliseconds) );
      //Send the RPC result now;
      RpcManager my_rpc = System.Threading.Interlocked.Exchange(ref _rpc, null);
      if( my_rpc != null ) {
        //We have not sent any reply yet:
        my_rpc.SendResult(_req_state, res_dict);
      }
      return false;
    }
    public void HandleError(ReqrepManager man, int message_number,