public GetEnumerationsResponse GetEnumerations(string location, GetEnumerationsRequest req)
        {
            var agent = _agents.GetAgent(location);

            _agentConnectConfig.DecorateRequest(req);
            return(_testRunner.AgentConnect.GetEnumerations(agent, req));
        }
        public GetEnumerationsResponse GetEnumerations(GetEnumerationsRequest req)
        {
            var agent    = AuthIntegration.GetAgent();
            var response = _agentConnect.GetEnumerations(agent, req);

            CheckFlagsForDataChange(response.Payload?.Flags, agent);
            return(response);
        }
Esempio n. 3
0
        public AcApiResponse <GetEnumerationsResponse, ApiData> GetEnumerations(GetEnumerationsRequest req)
        {
            var resp = _agentConnectIntegration.GetEnumerations(req);

            var apiResp = new AcApiResponse <GetEnumerationsResponse, ApiData>
            {
                BusinessMetadata = MapperHelper.SetResponseProperties(resp.Payload?.Flags, DataSource.AgentConnect),
                ResponseData     = resp
            };

            return(apiResp);
        }
        public override GetEnumerationsResponse GetEnumerations(Agent agent, GetEnumerationsRequest getEnumerationsRequest)
        {
            // GetEnumerations key is Language+EnumerationName
            // Language - Request.Language
            // EnumerationName- Request.EnumerationName (NAME_SUFFIX, OCCUPATION, PERSONAL_ID2_TYPE)
            GetEnumerationsResponse enumerationsResponse;
            var enumerationsKeyFormatted = string.Format(CacheKeys.GETENUMERATIONSKEY, agent.Language, getEnumerationsRequest.EnumerationName);
            var result = _cacheManager.Contains <CachedObjectResponseContainer <GetEnumerationsResponse> >(enumerationsKeyFormatted, CacheRegion.Global);
            Func <GetEnumerationsResponse> enumerationsCacheSaveFunction = delegate()
            {
                var version = getEnumerationsRequest.CachedVersion;
                getEnumerationsRequest.CachedVersion = null;

                enumerationsResponse = base.GetEnumerations(agent, getEnumerationsRequest);
                var CachedContainer = CacheAheadHelper.PopulateCacheMetadata <GetEnumerationsResponse>(enumerationsResponse, CachePolicies.FullWeek);
                enumerationsResponse = base.GetEnumerations(agent, getEnumerationsRequest);
                if (!string.IsNullOrEmpty(enumerationsResponse.Payload.Version) && enumerationsResponse.Payload.Enumerations.Any())
                {
                    _cacheManager.Save(enumerationsKeyFormatted, CachedContainer, CacheRegion.Global, CachePolicies.FullWeek);
                }

                getEnumerationsRequest.CachedVersion = version;
                return(enumerationsResponse);
            };

            if (result.Exists)
            {
                CacheAheadHelper.ExecuteCacheAheadProcess <GetEnumerationsResponse>(enumerationsCacheSaveFunction, result.CachedObj.CacheMetadata);
                if (getEnumerationsRequest.CachedVersion != result.CachedObj.DataObject.Payload.Version)
                {
                    enumerationsResponse = result.CachedObj.DataObject;
                }
                else
                {
                    enumerationsResponse = new GetEnumerationsResponse {
                        Payload = new GetEnumerationsResponsePayload {
                            Version = getEnumerationsRequest.CachedVersion
                        }
                    };
                }
            }
            else
            {
                enumerationsResponse = enumerationsCacheSaveFunction();
            }
            return(enumerationsResponse);
        }
Esempio n. 5
0
 public virtual async Task <GetEnumerationsResponse> GetEnumerationsAsync(Agent agent, GetEnumerationsRequest getEnumerationsRequest)
 {
     return(await AgentConnect.GetEnumerationsAsync(agent, getEnumerationsRequest));
 }
Esempio n. 6
0
 public virtual GetEnumerationsResponse GetEnumerations(Agent agent, GetEnumerationsRequest getEnumerationsRequest)
 {
     return(AgentConnect.GetEnumerations(agent, getEnumerationsRequest));
 }