protected override void Send(Message m, System.Action<Message> done) { MessageId++; var x = new AsyncProxy.Info { m = m, done = done}; x.m.ToServerMessageId = MessageId; Console.WriteLine("sending message with id : " + x.m.ToServerMessageId); Queue.Add(x); }
private void AsyncInvoke(ExpandoMember vx, ExpandoMember vm, Message m) { Console.WriteLine("server will call: " + vx.Name); var a = new List<object>(); bool r = false; foreach (ExpandoMember v in vx.Self.GetFields()) { if (v.Name == AsyncProxy.ReturnValue) r = true; else a.Add(v.Self.To<object>()); } var retval = vm.Invoke(a.ToArray()); if (r) { vx.Self.SetMember(AsyncProxy.ReturnValue, retval); } var x = new AsyncProxy.Info { m = m }; //Console.WriteLine("sending server-message with id : " + x.m.ToServerMessageId); Queue.Add(x); }