public LkpLeadStatusRepository(IConnectionFactory connectionFactory, LoggingCommandHandlerDecorator <LogCommand> loghandler) { _connectionFactory = connectionFactory; _logHandler = loghandler ?? throw new ArgumentNullException(nameof(loghandler), "logging commandhandlerDecorator instance is null"); }
//private readonly HttpContextBase _httpContextBase; //private Guid UserGuid { get; set; } /// <summary> /// CustomerController constructor with dependencies (params) shown below /// </summary> /// <param name="CustomerService"></param> /// <param name="loggingInstance"></param> /// <param name="loghandler"></param> public CustomerController(ICustomerService CustomerService, ILog loggingInstance, LoggingCommandHandlerDecorator <LogCommand> loghandler) { _CustomerService = CustomerService; _loggingInstance = loggingInstance; _logHandler = loghandler; }
//private Guid UserGuid { get; set; } /// <summary> /// LeadController constructor with dependencies (params) shown below /// </summary> /// <param name="leadService"></param> /// <param name="loggingInstance"></param> /// <param name="loghandler"></param> public LeadController(ILeadService leadService, ILog loggingInstance, LoggingCommandHandlerDecorator <LogCommand> loghandler) { _leadService = leadService; _loggingInstance = loggingInstance; _logHandler = loghandler; }
/// <param name="SchedulingService"></param> /// <param name="loggingInstance"></param> /// <param name="loghandler"></param> public SchedulingController(ISchedulingService SchedulingService, ILog loggingInstance, LoggingCommandHandlerDecorator <LogCommand> loghandler) { _SchedulingService = SchedulingService; _loggingInstance = loggingInstance; _logHandler = loghandler; }
public SchedulingService( ISchedulingRepository schedulingRepository , IProgramRepository programRepository , ICustomerRepository customerRepository , ICdcRepository cdcRepository , ILog loggingInstance, LoggingCommandHandlerDecorator <LogCommand> loghandler ) { _schedulingRepository = schedulingRepository ?? throw new ArgumentNullException($"schedulingRepository repository instance is null"); _programRepository = programRepository ?? throw new ArgumentNullException($"programRepository repository instance is null"); _customerRepository = customerRepository ?? throw new ArgumentNullException($"customerRepository repository instance is null"); _cdcRepository = cdcRepository ?? throw new ArgumentNullException($"cdcRepository repository instance is null"); _loggingInstance = loggingInstance ?? throw new ArgumentNullException($"logging instance is null"); _logHandler = loghandler ?? throw new ArgumentNullException($"logging commandhandlerDecorator instance is null"); }
public LeadService( ILeadRepository leadRepository , IERMSRepository ermsRepository , IContactRepository contactRepository , IAddressRepository addressRepository , IUsageRepository usageRepository , IProgramRepository programRepository , ICustomerRepository customerRepository , ICdcRepository cdcRepository , ILog loggingInstance, LoggingCommandHandlerDecorator <LogCommand> loghandler ) { _leadRepository = leadRepository ?? throw new ArgumentNullException($"lead repository instance is null"); _contactRepository = contactRepository ?? throw new ArgumentNullException($"ContactRepository repository instance is null"); _ermsRepository = ermsRepository ?? throw new ArgumentNullException($"ermsRepository repository instance is null"); _addressRepository = addressRepository ?? throw new ArgumentNullException($"AddressRepository repository instance is null"); _usageRepository = usageRepository ?? throw new ArgumentNullException($"UsageRepository repository instance is null"); _customerRepository = customerRepository ?? throw new ArgumentNullException($"customerRepository repository instance is null"); _cdcRepository = cdcRepository ?? throw new ArgumentNullException($"cdcRepository instance is null"); _programRepository = programRepository ?? throw new ArgumentNullException($"programRepository repository instance is null"); _loggingInstance = loggingInstance ?? throw new ArgumentNullException($"logging instance is null"); _logHandler = loghandler ?? throw new ArgumentNullException($"logging commandhandlerDecorator instance is null"); }
private static void WorkWithCommandsWithoutIoc() { System.Console.WriteLine("\n-- No IoC --"); // Line up some commands to execute var itemToCreateThenChange = new Todo { Caption = "Feed cat", Category = "Etc" }; var cmd1 = new CreateTodoCommand { Data = new Todo { Caption = "I SHOULD BE DELETED", Category = "Etc" } }; // id will become 1 var cmd2 = new CreateTodoCommand { Data = itemToCreateThenChange }; // id will become 2 var cmd3 = new CreateTodoCommand { Data = new Todo { Caption = "Pay bills", Category = "Etc" } }; // id will become 3 var cmd4 = new CreateTodoCommand { Data = new Todo { Caption = "I DO NOT PASS THE FILTER", Category = "Uncategorized" } }; // id will become 3 var updateCommand = new UpdateTodoCommand { Data = new Todo { Id = itemToCreateThenChange.Id, Category = itemToCreateThenChange.Category, Caption = "Feed BOTH cats" } }; var deleteCommand = new DeleteTodoCommand { Id = 1 }; // delete milk // Prepare the handlers var createHandler = new CreateTodoCommandHandler(new CachedRepository <Todo>()); var updateHandler = new UpdateTodoCommandHandler(new CachedRepository <Todo>()); var deleteHandler = new DeleteTodoCommandHandler(new CachedRepository <Todo>()); // Example using a decorator. We're instantiating the decorator manually here but the idea is to it with IoC. // This decorator outputs some logging to to Console.Out. var decorating_deleteHandler = new LoggingCommandHandlerDecorator <DeleteTodoCommand>(deleteHandler, (ILogger) new ConsoleLogger()); // Create something then queue it for deletion createHandler.Handle(cmd1).Wait(); deleteCommand.Id = cmd1.Output; Task.WaitAll( createHandler.Handle(cmd2) , createHandler.Handle(cmd3) , createHandler.Handle(cmd4) ); updateHandler.Handle(updateCommand).Wait(); decorating_deleteHandler.Handle(deleteCommand).Wait(); // Example using a queryhandler to deliver results var qhandler = new FindTodosByCategoryQueryHandler(new CachedRepository <Todo>()); var query = new FindTodosByCategoryQuery { Category = "Etc" }; var queryResult = qhandler.Handle(query); // Only two items should show up since we deleted one, and one doesn't match the query. PrintResults(queryResult.Result); }