示例#1
0
 public RetrievePaymentQuery(
     RequestTrackingService requestTrackingService,
     ILogger <RetrievePaymentController> logger,
     DataStoreDbContext dataStoreDbContext
     )
 {
     this._requestTrackingService = requestTrackingService;
     this._logger             = logger;
     this._dataStoreDbContext = dataStoreDbContext;
 }
示例#2
0
 public PayoutCommand(
     IBankService bank,
     DataStoreDbContext dataStoreDbContext,
     ILogger <PayoutCommand> logger,
     RequestTrackingService requestTrackingService
     )
 {
     this._bank   = bank;
     this._logger = logger;
     this._requestTrackingService = requestTrackingService;
     this._dataStoreDbContext     = dataStoreDbContext;
 }
示例#3
0
        private static BankService GetBankService(StringContent body, Mock <IHttpClientFactory> httpClientFactory)
        {
            var requestTrackingService = new RequestTrackingService();
            var logger      = Mock.Of <ILogger <BankService> >();
            var bankService = new BankService(
                requestTrackingService,
                logger,
                new Uri("http://BankService_url.io"),
                httpClientFactory.Object);

            return(bankService);
        }
示例#4
0
 public BankService(
     RequestTrackingService requestTrackingService,
     ILogger <BankService> logger,
     Uri url,
     IHttpClientFactory clientFactory
     )
 {
     this._clientFactory          = clientFactory;
     this._url                    = url;
     this._logger                 = logger;
     this._requestTrackingService = requestTrackingService;
 }
示例#5
0
        /// <summary>
        /// OnActionExecuting to run before Action
        /// and start stopwatch and set RequestTrackingId
        /// </summary>
        /// <param name="context"></param>
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            this._logger = (ILogger <TrackingActionFilter>)context.HttpContext.RequestServices
                           .GetService(typeof(ILogger <TrackingActionFilter>));

            //Initialize Request Tracking Id
            this._requestTrackingService = (RequestTrackingService)context.HttpContext.RequestServices
                                           .GetService(typeof(RequestTrackingService));

            this._stopwatch = new Stopwatch();
            this._stopwatch.Start();

            this._logger.LogInformation($@"RequestId:{this._requestTrackingService.RequestTraceId} 
            Started for controller:{context.RouteData.Values["controller"]} and action:{context.RouteData.Values["action"]}");
        }
示例#6
0
        private ActionContext MockActionContext()
        {
            var logger = Mock.Of <ILogger <TrackingActionFilter> >();
            var requestTrackingService = new RequestTrackingService();
            var httpContext            = new Mock <HttpContext>();
            var headers = new HeaderDictionary(new Dictionary <string, StringValues>());

            httpContext.Setup(c => c.RequestServices.GetService(typeof(RequestTrackingService))).Returns(requestTrackingService);
            httpContext.Setup(c => c.RequestServices.GetService(typeof(ILogger <TrackingActionFilter>))).Returns(logger);
            httpContext.Setup(c => c.Response.Headers).Returns(headers);
            return(new ActionContext
            {
                HttpContext = httpContext.Object,
                RouteData = new RouteData(),
                ActionDescriptor = new ActionDescriptor(),
            });
        }
示例#7
0
 public ProcessPaymentController(IPayoutCommand payoutCommand, RequestTrackingService requestTrackingService)
 {
     this._payoutCommand          = payoutCommand;
     this._requestTrackingService = requestTrackingService;
 }