public static DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.RecordRequest GetRecordRequest()
 {
     using (new zAppDev.DotNet.Framework.Profiling.Profiler("XPackLog", zAppDev.DotNet.Framework.Profiling.AppDevSymbolType.ClassOperation, "GetRecordRequest")) {
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.RecordRequest  req         = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.RecordRequest();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.QueryOperation query       = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.QueryOperation();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.BoolOperation  boolOp      = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.BoolOperation();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.MustOperation  mustOp      = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.MustOperation();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.QueryString    queryString = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.QueryString();
         queryString.analyze_wildcard = true; queryString.query = "+result_type:\"record\""; mustOp.query_string = queryString; boolOp.must = mustOp; DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Filter filter = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Filter();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Range     range     = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Range();
         DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Timestamp timestamp = new DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Timestamp();
         timestamp.gte = "now-1y"; timestamp.lte = "now"; range.timestamp = timestamp; filter.range = range; boolOp.filter = filter; query.Bool = boolOp; req.query = query; return(req);
     }
 }
        public static DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Results GetAnomaliesOnHits(int?hits, DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.RecordRequest q)
        {
            System.Func <string> getUrl = () =>
            {
                System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
                return("/.ml-anomalies-custom-obapi_hm_resp_hits_per_service/_search?size=" + hits.GetValueOrDefault(0));
            };
            var _operationRelativeUrl = getUrl.Invoke().Trim();

            if (_operationRelativeUrl?.StartsWith("/") == true && BaseUrl?.EndsWith("/") == true)
            {
                _operationRelativeUrl = _operationRelativeUrl.TrimStart('/');
            }
            var _targetUrl = BaseUrl + _operationRelativeUrl;
            var _options   = new RestServiceConsumptionOptions
            {
                Url             = _targetUrl,
                Verb            = RestHTTPVerb.POST,
                SecurityType    = RestSecurityType.BasicAuth,
                UserName        = "******",
                Password        = "******",
                ExtraHeaderData = new System.Collections.Generic.Dictionary <string, string>(StringComparer.OrdinalIgnoreCase)
                {
                },
                LogAccess        = false,
                IsCachingEnabled = false,
                ApiName          = "XPackML",
                Operation        = "GetAnomaliesOnHits",
                PostType         = PostType.JSON,
                Data             = q, FormData = new Dictionary <string, object> {
                    { "q", q }
                }
            };
            Func <ServiceConsumptionContainer, DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Results> _invocation = (_httpResponse) =>
            {
                var _returnedItem = RestServiceConsumer.Consume <DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Results>(_options, _httpResponse);
                return(zAppDev.DotNet.Framework.Utilities.Common.SafeCast <DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Results>(_returnedItem));
            };
            var _consumer = new ServiceConsumer <DSS1_RetailerDriverStockOptimisation.ExternalStructs.XPackML.Results>(_invocation);

            return(_consumer.Invoke(_options));
        }