public RequestHandlerBase GetHandler(ServiceRequestDTO data) { RequestHandlerBase handler = null; var type = data.GetType(); if (type == typeof(TransferAssetRequestDTO)) { handler = new TransferAssetReqHandler(); } else if (type == typeof(TerminationRequestDTO)) { handler = new TerminationReqHandler(); } else if (type == typeof(ReturnDeviceRequestDTO)) { handler = new ReturnDeviceReqHandler(); } else if (type == typeof(NewScenarioRequestDTO)) { handler = new NewScenarioReqHandler(); } else if (type == typeof(NewContractRequestDTO)) { handler = new NewContractReqHandler(); } else if (type == typeof(ErrorChargesRequestDTO)) { handler = new ErrorChargesReqHandler(); } else if (type == typeof(BrokenDeviceRequestDTO)) { handler = new BrokenDeviceReqHandler(); } if (handler != null) { handler.ServiceRequest = data; return(handler); } throw new NotImplementedException(); }
public RequestHandlerBase GetHandler(EScenario scenario) { RequestHandlerBase handler = null; switch (scenario) { case EScenario.BROKEN_DEVICE: handler = new BrokenDeviceReqHandler(); break; case EScenario.NEW_SCENARIO: handler = new NewScenarioReqHandler(); break; case EScenario.ERROR_CHARGES: handler = new ErrorChargesReqHandler(); break; case EScenario.NEW_CONTRACT: handler = new NewContractReqHandler(); break; case EScenario.RETURN_DEVICE: handler = new ReturnDeviceReqHandler(); break; case EScenario.TERMINATION: handler = new TerminationReqHandler(); break; case EScenario.TRANSFER_ASSET: handler = new TransferAssetReqHandler(); break; } if (handler != null) { return(handler); } throw new NotImplementedException(); }