Ejemplo n.º 1
0
        public async Task Initialize()
        {
            string datafile = string.Empty;
            var    url      = string.Format(_cdnPath, ApiKey);

            using (var webClient = new System.Net.WebClient())
            {
                // To refresh on every request
                webClient.CachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.NoCacheNoStore);
                datafile = webClient.DownloadString(url);
            }

            _optimizelyClient = new OptimizelySDK.Optimizely(datafile);
            await Task.FromResult(0);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Create optimizely client by set of parameters. Datafile will be updated from optimizely server
        /// </summary>
        /// <param name="createParameters"></param>
        /// <returns></returns>
        public static IOptimizely Create(OptimizelyClientCreateParameters createParameters)
        {
            if (createParameters == null)
            {
                throw new ArgumentNullException(nameof(createParameters));
            }

            var builder = new HttpProjectConfigManager.Builder()
                          .WithSdkKey(createParameters.SdkKey)
                          .WithStartByDefault();

            var projectConfigManager = builder
                                       .WithPollingInterval(TimeSpan.FromSeconds(createParameters.PollingPeriodInSeconds))
                                       .Build();

            var optimizely = new OptimizelySDK.Optimizely(projectConfigManager);

            return(new OptimizelyClient(optimizely));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Create optimizely client from dataFile
        /// </summary>
        /// <param name="dataFile"></param>
        /// <returns></returns>
        public static IOptimizely CreateFromDataFile(string dataFile)
        {
            var optimizely = new OptimizelySDK.Optimizely(dataFile);

            return(new OptimizelyClient(optimizely));
        }
Ejemplo n.º 4
0
 private OptimizelyClient(OptimizelySDK.Optimizely optimizely)
 {
     _optimizely = optimizely;
 }