public override void Init() { base.Init(); _distributedLockService = _container.Resolve <DistributedLockService>(); _applicationEnvironment = (StubApplicationEnvironment)_container.Resolve <IApplicationEnvironment>(); _distributedLockRepository = _container.Resolve <IRepository <DistributedLockRecord> >(); _transactionManager = _container.Resolve <ITransactionManager>(); }
public DataService(StackExchange.Redis.ConnectionMultiplexer redis, DistributedLockService distributedLockService, MongoClient mongoClient, string redisDownloadListKey, string mongoDownloadCollectionName) { this.redis = redis; this.distributedLockService = distributedLockService; this.mongoClient = mongoClient; this.redisDownloadListKey = redisDownloadListKey; this.mongoDownloadCollectionName = mongoDownloadCollectionName; }
public Runner( IIoCContainer container, EventBroker eventBroker, IApplicationLifetime applicationLifetime, DistributedLockService distributedLockService, string enabledSetting) { if (string.IsNullOrEmpty(enabledSetting) || !bool.TryParse(enabledSetting, out bool enabled) || !enabled) { this.Log().Information("MediaMapper not enabled. Set web.config AppSetting \"MediaMapperEnabled\" to \"true\" to enable."); return; } var subscription = eventBroker.Subscribe <FileCreated>(EventScope.Local, ev => { using (Solution.Instance.SystemToken.Use()) using (distributedLockService.AcquireLock(lockKey, TimeSpan.FromSeconds(10))) { foreach (var m in container.ResolveAll <IMediaMapper>().Where(r => r.GetUploadFolder()?.SystemId == ev.Item.FolderSystemId)) { m.Map(); } } }); applicationLifetime.ApplicationStarted.Register(() => { _task = Task.Run(() => { using (Solution.Instance.SystemToken.Use()) { while (!_cancellationTokenSource.Token.IsCancellationRequested) { if (SleepUnlessCancelled(5, _cancellationTokenSource.Token)) { return; } using (distributedLockService.AcquireLock(lockKey, TimeSpan.FromSeconds(10))) { foreach (var m in container.ResolveAll <IMediaMapper>()) { m.Map(); } } } } }, _cancellationTokenSource.Token); }); applicationLifetime.ApplicationStopping.Register(() => { _cancellationTokenSource.Cancel(); subscription.Dispose(); }); }
public ErpPriceCalculatorDecorator(IPriceCalculator parent, IHttpContextAccessor httpContextAccessor, DistributedMemoryCacheService distributedMemoryCacheService, DistributedLockService distributedLockService, ILogger <ErpPriceCalculatorDecorator> logger) { _parent = parent; _httpContextAccessor = httpContextAccessor; _distributedMemoryCacheService = distributedMemoryCacheService; _distributedLockService = distributedLockService; _logger = logger; }
public Runner( IIoCContainer container, EventBroker eventBroker, IApplicationLifetime applicationLifetime, DistributedLockService distributedLockService) : this( container, eventBroker, applicationLifetime, distributedLockService, ConfigurationManager.AppSettings["MediaMapperEnabled"]) { }
public PaymentWidgetService( SecurityToken securityToken, ModuleECommerce moduleECommerce, TargetGroupEngine targetGroupEngine, CartAccessor cartAccessor, ChannelService channelService, LanguageService languageService, DistributedLockService distributedLockService) { _cartAccessor = cartAccessor; _channelService = channelService; _languageService = languageService; _distributedLockService = distributedLockService; _securityToken = securityToken; _targetGroupEngine = targetGroupEngine; _moduleECommerce = moduleECommerce; }
public KlarnaWidgetV2( IPaymentInfoCalculator paymentInfoCalculator, PaymentWidgetService paymentWidgetService, KlarnaPaymentConfigV2 paymentConfig, RequestModelAccessor requestModelAccessor, RouteRequestLookupInfoAccessor routeRequestLookupInfoAccessor, SecurityToken securityToken, UrlService urlService, PageService pageService, DistributedLockService distributedLockService) { _paymentInfoCalculator = paymentInfoCalculator; _paymentConfig = paymentConfig; _paymentWidgetService = paymentWidgetService; _routeRequestLookupInfoAccessor = routeRequestLookupInfoAccessor; _requestModelAccessor = requestModelAccessor; _securityToken = securityToken; _urlService = urlService; _pageService = pageService; _distributedLockService = distributedLockService; }
public ERPPriceCalculatorImpl(DistributedMemoryCacheService distributedMemoryCacheService, DistributedLockService distributedLockService) { _distributedMemoryCacheService = distributedMemoryCacheService; _distributedLockService = distributedLockService; }
/// <summary> /// Initialize a new instance of ResourceBootstrapService passing required connectors /// </summary> /// <param name="distributedLockService">DistributedLockService</param> /// <param name="minio">S3</param> /// <param name="mongoClient">MongoDB</param> /// <param name="model">RabbitMQ</param> public ResourceBootstrapService(DistributedLockService distributedLockService, MinioClient minio, MongoClient mongoClient) { this.minio = minio; this.mongoClient = mongoClient; this.distributedLockService = distributedLockService; }