/// <summary> /// Initializes a new instance of the Event3 class. /// </summary> /// <arg name="handler"></arg> /// <arg name="arg1"></arg> /// <arg name="arg2"></arg> /// <arg name="arg3"></arg> /// <arg name="arg4"></arg> public Event4(int evenId, Handler4 <TArg1, TArg2, TArg3, TArg4> handler, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4) : base(evenId) { this.handler = handler; this.arg1 = arg1; this.arg2 = arg2; this.arg3 = arg3; this.arg4 = arg4; }
public bool TryGetHandler(out IHttpHandler handler) { var count = _collection.Count; if (count == 0) { handler = null; return(true); } else if (count == 1) { handler = _collection[0]; return(true); } else if (count == 2) { handler = new Handler2(_collection[0], _collection[1]); return(true); } else if (count == 3) { handler = new Handler3(_collection[0], _collection[1], _collection[2]); return(true); } else if (count == 4) { handler = new Handler4(_collection[0], _collection[1], _collection[2], _collection[3]); return(true); } else if (count == 5) { handler = new Handler5(_collection[0], _collection[1], _collection[2], _collection[3], _collection[4]); return(true); } else { handler = null; return(false); } }
/// <summary> /// 异步调用 /// </summary> public void DoAsynAction() { Handler1 handler1 = new Handler1(AsynDemo1); handler1.BeginInvoke(null, null); Handler2 handler2 = new Handler2(AsynDemo2); handler2.BeginInvoke("string", null, null); Handler3 handler3 = new Handler3(AsynDemo3); //handler3.BeginInvoke(null, null); IAsyncResult result3 = handler3.BeginInvoke(null, null); Handler4 handler4 = new Handler4(AsynDemo4); //handler4.BeginInvoke("string", null, null); IAsyncResult result4 = handler4.BeginInvoke("string", null, null); Handler5 handler5 = new Handler5(AsynDemo5); //handler5.BeginInvoke("", 0, null, null); IAsyncResult result5 = handler5.BeginInvoke("string", 0, null, null); }
public RequestHandler4 <T, TR, TU, TI> Handle(Handler4 handler) { _executor = (request, param1, param2, param3, param4, mediaTypeMapper1, errorHandler1, logger1) => RequestExecutor.ExecuteRequest(() => handler.Invoke(param1, param2, param3, param4), errorHandler1, logger1); return(this); }
/// <summary> /// Create an event with 4 arguments. /// </summary> /// <typearg name="TArg1"></typearg> /// <typearg name="TArg2"></typearg> /// <typearg name="TArg3"></typearg> /// <typearg name="TArg4"></typearg> /// <arg name="handler"></arg> /// <arg name="arg1"></arg> /// <arg name="arg2"></arg> /// <arg name="arg3"></arg> /// <arg name="arg4"></arg> /// <returns></returns> public static EventBase CreateEvent <TArg1, TArg2, TArg3, TArg4>(int eventId, Handler4 <TArg1, TArg2, TArg3, TArg4> handler, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4) { return(new Event4 <TArg1, TArg2, TArg3, TArg4>(eventId, handler, arg1, arg2, arg3, arg4)); }