private void RunChainOfResponsibilityExample()
        {
            RequestHandler rh1 = new RequestOne("Request 1");
            RequestHandler rh2 = new RequestTwo("Request 2");
            RequestHandler rh3 = new RequestThree("Request 3");
            RequestHandler rh4 = new RequestFour("Request 4");

            rh1.Successor = rh2;
            rh2.Successor = rh3;
            rh3.Successor = rh4;
            rh4.Successor = null;

            rh1.ProcessRequest(rh4);
            rh1.ProcessRequest(rh3);
            rh1.ProcessRequest(rh2);

            try
            {
                rh2.ProcessRequest(rh1);
                Console.WriteLine("Error: Successors shouldn't 'know' about pre-successors");
            }
            catch (Exception e)
            {
                Console.WriteLine("Worked: Successors shouldn't 'know' about pre-successors");
            }
        }
Ejemplo n.º 2
0
		public Response Get(RequestTwo request)
		{
			return new Response() { SomeTextField = "Hello World from AssemblyTwo.Service", AssemblyNumber = 2 };
		}
Ejemplo n.º 3
0
 public static Response ServiceMethod(RequestTwo request)
 {
     return(new Response());
 }
Ejemplo n.º 4
0
 protected Response ServiceMethod(RequestTwo request)
 {
     return(new Response());
 }
Ejemplo n.º 5
0
 public async Task ServiceMethodReturningTask(RequestTwo request)
 {
     await LongRunningTask.Instance();
 }
 public async Task <Response> ServiceMethod(RequestTwo request, CancellationToken cancel, int tooMany)
 {
     return(await LongRunningTask.Instance <Response>());
 }
 public async Task <Response> ServiceMethod(RequestTwo request)
 {
     return(await LongRunningTask.Instance <Response>());
 }
 public Task <object> ServiceMethod(RequestTwo request)
 {
     return(LongRunningTask.Instance <object>());
 }
 public async Task ServiceMethodReturningTask(RequestTwo request, CancellationToken cancel)
 {
     await LongRunningTask.Instance();
 }