public static TaskAction <TResult> ProcessRequest <TInput, TResult>(this WebSocket session, TInput objectToSend, string Name, int timeoutMilliseconds = 60000) { Request <TInput> localRequest; bool handled; TResult result; _003C_003Ec__DisplayClass4_1 <TInput, TResult> @object; return(AsyncTask.StartNew(delegate { try { DateTime t = DateTime.Now.AddMilliseconds(timeoutMilliseconds); localRequest = (Request <TInput>) new Request <TInput>(objectToSend, Name); handled = false; result = (TResult)default(TResult); OnResponseRecieved = (hd)Delegate.Combine(OnResponseRecieved, new hd(@object._003CProcessRequest_003Eg__OnResponse_007C1)); byte[] array = ((Request <TInput>)localRequest).SerializeProto(); session.Send(array, 0, array.Length); while (t >= DateTime.Now && !handled) { Thread.Sleep(100); } OnResponseRecieved = (hd)Delegate.Remove(OnResponseRecieved, new hd(@object._003CProcessRequest_003Eg__OnResponse_007C1)); return (TResult)result; } catch (Exception value) { Console.WriteLine(value); return default(TResult); } })); }
// Token: 0x06000C62 RID: 3170 RVA: 0x000256A0 File Offset: 0x000238A0 public static bool?OnResponse(this ResponseBase response) { hd onResponseRecieved = JJo.OnResponseRecieved; if (onResponseRecieved == null) { return(null); } return(new bool?(onResponseRecieved(response))); }