public RedisRemoveActivity(IResourceCatalog resourceCatalog, ResponseManager responseManager, RedisCacheBase redisCache) { ResponseManager = responseManager; ResourceCatalog = resourceCatalog; DisplayName = "Redis Remove"; _redisCache = redisCache; }
protected override List <string> PerformExecution(Dictionary <string, string> evaluatedValues) { try { RedisSource = ResourceCatalog.GetResource <RedisSource>(GlobalConstants.ServerWorkspaceID, SourceId); if (RedisSource == null || RedisSource.ResourceType != enSourceType.RedisSource.ToString()) { _messages.Add(ErrorResource.RedisSourceHasBeenRemoved); return(_messages); } _redisCache = new RedisCacheImpl(RedisSource.HostName, Convert.ToInt32(RedisSource.Port), RedisSource.Password); if (CounterType == "Increment") { _result = _redisCache.Increment(Key, StepSize); Dev2Logger.Debug($"Cache {Key} Incremented {StepSize}: {_result}", GlobalConstants.WarewolfDebug); } else { _result = _redisCache.Decrement(Key, StepSize); Dev2Logger.Debug($"Cache {Key} Decremented {StepSize}: {_result}", GlobalConstants.WarewolfDebug); } return(new List <string> { _result.ToString() }); } catch (Exception ex) { Dev2Logger.Error(nameof(RedisCounterActivity), ex, GlobalConstants.WarewolfError); throw new Exception(ex.GetAllMessages()); } }
public RedisCacheActivity(IResourceCatalog resourceCatalog, ResponseManager responseManager, RedisCacheBase redisCache) { ResponseManager = responseManager; _redisCache = redisCache; ResourceCatalog = resourceCatalog; DisplayName = "Redis Cache"; ActivityFunc = new ActivityFunc <string, bool> { DisplayName = "Data Action", Argument = new DelegateInArgument <string>($"explicitData_{DateTime.Now:yyyyMMddhhmmss}") }; _serializer = new Dev2JsonSerializer(); }
public SpecRedisActivity(IResourceCatalog resourceCatalog, RedisCacheBase redisCache) : base(resourceCatalog, redisCache) { }
public RedisCacheActivity(IResourceCatalog resourceCatalog, RedisCacheBase redisCache) : this(resourceCatalog, new ResponseManager(), redisCache) { }
protected override List <string> PerformExecution(Dictionary <string, string> evaluatedValues) { _errorsTo = new ErrorResultTO(); try { RedisSource = ResourceCatalog.GetResource <RedisSource>(GlobalConstants.ServerWorkspaceID, SourceId); if (RedisSource == null || RedisSource.ResourceType != enSourceType.RedisSource.ToString()) { _messages.Add(ErrorResource.RedisSourceHasBeenRemoved); return(_messages); } _redisCache = new RedisCacheImpl(RedisSource.HostName, Convert.ToInt32(RedisSource.Port), RedisSource.Password); var cacheTTL = TimeSpan.FromSeconds(TTL); _innerActivity = ActivityFunc.Handler as IDev2Activity; if (_innerActivity is null) { _errorsTo.AddError($"Activity drop box cannot be null"); } if (_innerActivity.GetOutputs().Count() <= 0) { _errorsTo.AddError($"{_innerActivity.GetDisplayName()} activity must have at least one output variable."); } IDictionary <string, string> cachedData = GetCachedOutputs(); if (cachedData != null) { base._debugOutputs.Clear(); var debugItem = new DebugItem(); AddDebugItem(new DebugItemStaticDataParams("", "Redis key { " + Key + " } found"), debugItem); _debugOutputs.Add(debugItem); var outputIndex = 1; var outputVars = _innerActivity.GetOutputs(); foreach (var outputVar in outputVars) { if (cachedData.ContainsKey(outputVar)) { var item = cachedData[outputVar]; DataObject.Environment.Assign(outputVar, item, 0); if (!string.IsNullOrWhiteSpace(outputVar)) { debugItem = new DebugItem(); debugItem = TryCreateDebugItem(DataObject.Environment, outputIndex++, new AssignValue(outputVar, item), 0); _debugOutputs.Add(debugItem); } } else { _errorsTo.AddError("cached data missing key: " + outputVar); } } } else { base._debugOutputs.Clear(); var debugItem = new DebugItem(); AddDebugItem(new DebugItemStaticDataParams("", "Redis key { " + Key + " } not found"), debugItem); _debugInputs.Add(debugItem); _innerActivity.Execute(DataObject, 0); CacheOutputs(); } return(new List <string> { _result }); } catch (Exception ex) { Dev2Logger.Error(nameof(RedisCacheActivity), ex, GlobalConstants.WarewolfError); throw new Exception(ex.GetAllMessages()); } finally { if (_errorsTo.HasErrors()) { var errorString = _errorsTo.MakeDisplayReady(); DataObject.Environment.AddError(errorString); } } }