public ResourceCacheMetrics(OperatorSettings settings)
        {
            var crd         = CustomEntityDefinitionExtensions.CreateResourceDefinition <TEntity>();
            var labelValues = new[]
            {
                settings.Name,
                crd.Kind,
                crd.Group,
                crd.Version,
                crd.Scope.ToString(),
            };

            CachedItemsSummary = Metrics
                                 .CreateSummary(
                "operator_resource_cached_items_size",
                "Summary of the cached items count over the last 10 minutes",
                Labels)
                                 .WithLabels(labelValues);

            CachedItemsSize = Metrics
                              .CreateGauge(
                "operator_resource_cached_items_count",
                "Total number of cached items in this resource cache",
                Labels)
                              .WithLabels(labelValues);
        }
Exemplo n.º 2
0
        internal IOperatorBuilder AddOperatorBase(OperatorSettings settings)
        {
            Services.AddSingleton(settings);

            // support lazy service resolution
            Services.AddTransient(typeof(Lazy <>), typeof(LazyService <>));

            var jsonSettings = new JsonSerializerSettings
            {
                DateFormatHandling    = DateFormatHandling.IsoDateFormat,
                DateTimeZoneHandling  = DateTimeZoneHandling.Utc,
                NullValueHandling     = NullValueHandling.Ignore,
                ReferenceLoopHandling = ReferenceLoopHandling.Serialize,
                ContractResolver      = new NamingConvention(),
                Converters            = new List <JsonConverter>
                {
                    new StringEnumConverter {
                        CamelCaseText = true
                    },
                    new Iso8601TimeSpanConverter(),
                },
                DateFormatString = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.ffffffK",
            };

            Services.AddTransient(_ => jsonSettings);
            JsonConvert.DefaultSettings = () => jsonSettings;

            Services.AddTransient(
                _ => new SerializerBuilder()
                .ConfigureDefaultValuesHandling(DefaultValuesHandling.OmitNull)
                .WithNamingConvention(new NamingConvention())
                .WithTypeConverter(new YamlIntOrStrTypeConverter())
                .Build());

            Services.AddTransient <EntitySerializer>();

            Services.AddTransient <IKubernetesClient, KubernetesClient>();

            Services.AddTransient(typeof(IResourceCache <>), typeof(ResourceCache <>));
            Services.AddTransient(typeof(IResourceWatcher <>), typeof(ResourceWatcher <>));
            Services.AddTransient(typeof(IResourceEventQueue <>), typeof(ResourceEventQueue <>));
            Services.AddTransient(typeof(IResourceServices <>), typeof(ResourceServices <>));

            // Support for healthchecks and prometheus.
            Services
            .AddHealthChecks()
            .ForwardToPrometheus();

            // Add the default controller liveness check.
            AddHealthCheck <ControllerLivenessCheck>();

            // Support for leader election via V1Leases.
            Services.AddHostedService <LeaderElector>();
            Services.AddSingleton <ILeaderElection, LeaderElection>();

            Services.AddSingleton(ResourceTypeService);

            return(this);
        }
 public ResourceWatcher(ILogger <ResourceWatcher <TEntity> > logger, IKubernetesClient client, OperatorSettings settings)
 {
     _logger           = logger;
     _client           = client;
     _settings         = settings;
     _reconnectHandler = new ExponentialBackoffHandler(async() => await WatchResource());
     _metrics          = new ResourceWatcherMetrics <TEntity>(settings);
 }
Exemplo n.º 4
0
 public OperatorGenerator(
     EntitySerializer serializer,
     OperatorSettings settings,
     ResourceLocator resourceLocator)
 {
     _serializer  = serializer;
     _settings    = settings;
     _hasWebhooks = resourceLocator.ValidatorTypes.Any();
 }
Exemplo n.º 5
0
 public Register(
     OperatorSettings settings,
     IKubernetesClient client,
     ResourceLocator resourceLocator,
     IServiceProvider serviceProvider)
 {
     _settings        = settings;
     _client          = client;
     _resourceLocator = resourceLocator;
     _serviceProvider = serviceProvider;
 }
Exemplo n.º 6
0
 public Install(
     IKubernetesClient client,
     OperatorSettings settings,
     ResourceLocator resourceLocator,
     IServiceProvider serviceProvider)
 {
     _client          = client;
     _settings        = settings;
     _resourceLocator = resourceLocator;
     _serviceProvider = serviceProvider;
 }
Exemplo n.º 7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Page.IsPostBack)
        {
            return;
        }

        SetTitle(commonCulture.ElementValues.getResourceXPathString("/Products/ClubGallardo/Label", commonVariables.ProductsXML));

        var opSettings = new OperatorSettings(System.Configuration.ConfigurationManager.AppSettings.Get("Operator"));
        var addGpi     = Convert.ToBoolean(opSettings.Values.Get("GPIAddOtheClubs"));

        var isbHandler  = new ISBHandler(commonVariables.CurrentMemberSessionId, "ClubGallardo", commonVariables.GetSessionVariable("CurrencyCode"));
        var isbCategory = isbHandler.Process();

        var pngHandler  = new PNGHandler(commonVariables.CurrentMemberSessionId, "ClubGallardo");
        var pngCategory = pngHandler.Process();

        IEnumerable <IGrouping <string, GameCategoryInfo> > games;

        if (addGpi)
        {
            var gpiHandler  = new GPIHandler(commonVariables.CurrentMemberSessionId);
            var gpiCategory = gpiHandler.Process(true);
            isbCategory[0].Current = gpiHandler.InsertInjectedGames(gpiCategory, isbCategory[0].Current);

            games = pngCategory.Union(isbCategory).Union(gpiCategory).GroupBy(x => x.Title);
        }
        else
        {
            games = pngCategory.Union(isbCategory).GroupBy(x => x.Title);
        }

        StringBuilder sbGames = new StringBuilder();

        foreach (var category in games)
        {
            sbGames.AppendFormat("<div data-role='collapsible' data-collapsed='false' data-theme='b' data-content-theme='a' data-mini='true'><h4>{0}</h4>", category.Key);

            sbGames.AppendFormat("<div id='div{0}' class='div-product'><div><ul>", category.Key);

            foreach (var item in category)
            {
                AddGames(sbGames, item.New);

                AddGames(sbGames, item.Current);
            }

            sbGames.Append("</ul></div></div></div>");
        }

        divContainer.InnerHtml = Convert.ToString(sbGames);
    }
Exemplo n.º 8
0
 public MockManagedResourceController(
     ILogger <ManagedResourceController <TEntity> > logger,
     IKubernetesClient client,
     ResourceWatcher <TEntity> watcher,
     ResourceCache <TEntity> cache,
     IServiceProvider services,
     ResourceControllerMetrics <TEntity> metrics,
     OperatorSettings settings,
     IFinalizerManager <TEntity> finalizerManager)
     : base(logger, client, watcher, cache, services, metrics, settings, finalizerManager)
 {
 }
        public LeaderElector(
            ILogger <LeaderElector> logger,
            OperatorSettings settings,
            ILeaderElection election,
            IKubernetesClient client)
        {
            _logger   = logger;
            _settings = settings;
            _election = election;
            _client   = client;

            _leaseName = $"{_settings.Name}-leadership";
            _hostname  = Environment.MachineName;
        }
 public ResourceServices(
     ILoggerFactory loggerFactory,
     IKubernetesClient client,
     IResourceCache<TEntity> resourceCache,
     IResourceEventQueue<TEntity> eventQueue,
     Lazy<IEnumerable<IResourceFinalizer>> finalizers,
     OperatorSettings settings,
     ILeaderElection leaderElection)
 {
     LoggerFactory = loggerFactory;
     Client = client;
     ResourceCache = resourceCache;
     EventQueue = eventQueue;
     Finalizers = finalizers;
     Settings = settings;
     LeaderElection = leaderElection;
 }
Exemplo n.º 11
0
    protected void Page_Load(object sender, EventArgs e)
    {
        var divBuilder         = new StringBuilder();
        var enabledLanguages   = OperatorSettings.Get("EnabledLanguages");
        var availableLanguages = OperatorSettings.Get("LanguageSelection").Split('|');
        var countryCode        = CountryCode;

        foreach (var language in availableLanguages)
        {
            switch (countryCode)
            {
            case "my":
                divBuilder.Append(@"<div class='col-xs-6'>")
                .Append(@"<span id='");

                switch (language)
                {
                case "en-us":
                    divBuilder.Append(enabledLanguages.Contains("en-my") ? "en-my" : language);
                    break;

                case "zh-cn":
                    divBuilder.Append(enabledLanguages.Contains("zh-my") ? "zh-my" : language);
                    break;

                default:
                    divBuilder.Append(language);
                    break;
                }

                divBuilder.Append("' class='flags'></span>")
                .Append(@"</div>");
                break;

            default:
                divBuilder.Append(@"<div class='col-xs-6'>")
                .Append(@"<span id='")
                .Append(language)
                .Append("' class='flags'></span>")
                .Append(@"</div>");
                break;
            }
        }
        divLanguageContainer.InnerHtml = divBuilder.ToString();
    }
Exemplo n.º 12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Page.IsPostBack)
        {
            return;
        }

        SetTitle(commonCulture.ElementValues.getResourceXPathString("/Products/ClubDivino/Label", commonVariables.ProductsXML));

        var opSettings = new OperatorSettings(System.Configuration.ConfigurationManager.AppSettings.Get("Operator"));
        var addGpi     = Convert.ToBoolean(opSettings.Values.Get("GPIAddOtheClubs"));
        var sbGames    = new StringBuilder();

        var bsHandler  = new BSHandler(commonVariables.CurrentMemberSessionId, "ClubDivino", "FundTransfer", GetDevice());
        var bsCategory = bsHandler.Process();

        var cxHandler  = new CTXMHandler(commonVariables.CurrentMemberSessionId);
        var cxCategory = cxHandler.Process();

        var uc8Handler  = new UC8Handler(commonVariables.CurrentMemberSessionId, "ClubDivino", "FundTransfer");
        var uc8Category = uc8Handler.Process();

        IEnumerable <IGrouping <string, GameCategoryInfo> > games;

        if (addGpi)
        {
            var gpiHandler  = new GPIHandler(commonVariables.CurrentMemberSessionId);
            var gpiCategory = gpiHandler.Process(true);
            cxCategory[0].Current = gpiHandler.InsertInjectedGames(gpiCategory, cxCategory[0].Current);

            games = bsCategory.Union(cxCategory).Union(uc8Category).Union(gpiCategory).GroupBy(x => x.Title);
        }
        else
        {
            games = bsCategory.Union(cxCategory).Union(uc8Category).GroupBy(x => x.Title);
        }

        foreach (var group in games)
        {
            AddGamesPerDevice(sbGames, group);
        }

        divContainer.InnerHtml = Convert.ToString(sbGames);
    }
        public ResourceWatcherMetrics(OperatorSettings settings)
        {
            var crd         = CustomEntityDefinitionExtensions.CreateResourceDefinition <TEntity>();
            var labelValues = new[]
            {
                settings.Name,
                crd.Kind,
                crd.Group,
                crd.Version,
                crd.Scope.ToString(),
            };

            Running = Metrics
                      .CreateGauge(
                "operator_resource_watcher_running",
                "Determines if the resource watcher is up and running (1 == Running, 0 == Stopped)",
                Labels)
                      .WithLabels(labelValues);

            WatchedEvents = Metrics
                            .CreateCounter(
                "operator_resource_watcher_events",
                "The count of totally watched events from the resource watcher",
                Labels)
                            .WithLabels(labelValues);

            WatcherExceptions = Metrics
                                .CreateCounter(
                "operator_resource_watcher_exceptions",
                "The count of observed thrown exceptions from the resource watcher",
                Labels)
                                .WithLabels(labelValues);

            WatcherClosed = Metrics
                            .CreateCounter(
                "operator_resource_watcher_closed",
                "The count of observed 'close' events of the resource watcher",
                Labels)
                            .WithLabels(labelValues);
        }
Exemplo n.º 14
0
 public ResourceCache(OperatorSettings settings)
 {
     _metrics = new ResourceCacheMetrics <TEntity>(settings);
 }
Exemplo n.º 15
0
 public RunOperator(IHost host, IKubernetesClient client, OperatorSettings settings)
 {
     _host     = host;
     _client   = client;
     _settings = settings;
 }
        public ResourceControllerMetrics(OperatorSettings settings)
        {
            var crd         = CustomEntityDefinitionExtensions.CreateResourceDefinition <TEntity>();
            var labelValues = new[]
            {
                settings.Name,
                crd.Kind,
                crd.Group,
                crd.Version,
                crd.Scope.ToString(),
            };

            Running = Metrics
                      .CreateGauge(
                "operator_resource_controller_running",
                "Determines if the resource watcher is up and running (1 == Running, 0 == Stopped)",
                Labels)
                      .WithLabels(labelValues);

            EventsFromWatcher = Metrics
                                .CreateCounter(
                "operator_resource_controller_watched_events",
                "The count of totally watched events from the resource watcher",
                Labels)
                                .WithLabels(labelValues);

            RequeuedEvents = Metrics
                             .CreateCounter(
                "operator_resource_controller_requeued_events",
                "The count of totally requeued resources (normal requeue, without errors)",
                Labels)
                             .WithLabels(labelValues);

            ErroredEvents = Metrics
                            .CreateCounter(
                "operator_resource_controller_errored_events",
                "The count of totally errored reconciliation attempts.",
                Labels)
                            .WithLabels(labelValues);

            CreatedEvents = Metrics
                            .CreateCounter(
                "operator_resource_controller_created_events",
                "The count of total 'created' events reconciled by the controller",
                Labels)
                            .WithLabels(labelValues);

            UpdatedEvents = Metrics
                            .CreateCounter(
                "operator_resource_controller_updated_events",
                "The count of total 'updated' events reconciled by the controller",
                Labels)
                            .WithLabels(labelValues);

            NotModifiedEvents = Metrics
                                .CreateCounter(
                "operator_resource_controller_not_modified_events",
                "The count of total 'not modified' events reconciled by the controller",
                Labels)
                                .WithLabels(labelValues);

            StatusUpdatedEvents = Metrics
                                  .CreateCounter(
                "operator_resource_controller_status_updated_events",
                "The count of total 'status updated' events reconciled by the controller",
                Labels)
                                  .WithLabels(labelValues);

            FinalizingEvents = Metrics
                               .CreateCounter(
                "operator_resource_controller_finalized_events",
                "The count of total 'finalized' events reconciled by the controller",
                Labels)
                               .WithLabels(labelValues);

            DeletedEvents = Metrics
                            .CreateCounter(
                "operator_resource_controller_deleted_events",
                "The count of total 'deleted' events reconciled by the controller",
                Labels)
                            .WithLabels(labelValues);
        }
Exemplo n.º 17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Page.IsPostBack)
        {
            return;
        }


        //var handler = new GNSHandler(commonVariables.CurrentMemberSessionId, "ClubNuovo", "FundTransfer");
        //var gnsCategory = handler.Process();
        if (!string.IsNullOrWhiteSpace(commonCookie.CookieCurrency))
        {
            if ((commonCookie.CookieCurrency.ToLower() == "vnd") || (commonCookie.CookieCurrency.ToLower() == "idr"))
            {
                _currencySupported = false;
            }
        }

        PLSHandler plsHandler;
        List <GameCategoryInfo> plsCategory = null;

        if (_currencySupported)
        {
            plsHandler  = new PLSHandler(commonVariables.CurrentMemberSessionId, "ClubNuovo", "FundTransfer");
            plsCategory = plsHandler.Process();
        }

        var mrsHandler  = new MRSHandler(commonVariables.CurrentMemberSessionId, "ClubNuovo", "FundTransfer");
        var mrsCategory = mrsHandler.Process();

        var opSettings = new OperatorSettings(System.Configuration.ConfigurationManager.AppSettings.Get("Operator"));
        var addGpi     = Convert.ToBoolean(opSettings.Values.Get("GPIAddOtheClubs"));

        IEnumerable <IGrouping <string, GameCategoryInfo> > games;

        if (addGpi)
        {
            var gpiHandler  = new GPIHandler(commonVariables.CurrentMemberSessionId);
            var gpiCategory = gpiHandler.Process(true);
            //gnsCategory[0].Current = gpiHandler.InsertInjectedGames(gpiCategory, gnsCategory[0].Current);
            //games = gnsCategory.Union(plsCategory).Union(gpiCategory).GroupBy(x => x.Title);

            if (_currencySupported)
            {
                plsCategory[0].Current = gpiHandler.InsertInjectedGames(gpiCategory, plsCategory[0].Current);
                games = plsCategory.Union(mrsCategory).Union(gpiCategory).GroupBy(x => x.Title);
            }
            else
            {
                mrsCategory[0].Current = gpiHandler.InsertInjectedGames(gpiCategory, mrsCategory[0].Current);
                games = mrsCategory.Union(gpiCategory).GroupBy(x => x.Title);
            }
        }
        else
        {
            games = _currencySupported ? plsCategory.Union(mrsCategory).GroupBy(x => x.Title) : mrsCategory.GroupBy(x => x.Title);
        }

        var sbGames = new StringBuilder();

        foreach (var category in games)
        {
            sbGames.AppendFormat("<div data-role='collapsible' data-collapsed='false' data-theme='b' data-content-theme='a' data-mini='true'><h4>{0}</h4>", category.Key);

            sbGames.AppendFormat("<div id='div{0}' class='div-product'><div><ul>", category.Key);

            foreach (var item in category)
            {
                AddGames(sbGames, item.New);

                AddGames(sbGames, item.Current);
            }

            sbGames.Append("</ul></div></div></div>");
        }

        divContainer.InnerHtml = Convert.ToString(sbGames);
    }
Exemplo n.º 18
0
 public MaintenanceHelper(MaintenanceInfo maintenanceInfo)
 {
     _opsettings      = new OperatorSettings("W88");
     _maintenanceInfo = maintenanceInfo;
     _operatorPass    = _opsettings.Values.Get("OperatorKey");
 }
 public InstallerGenerator(EntitySerializer serializer, OperatorSettings settings)
 {
     _serializer = serializer;
     _settings   = settings;
 }
Exemplo n.º 20
0
 public Task UpdateOperatorSettings(Guid guid, OperatorSettings operatorSettings)
 {
     topology.UpdateTopologySettings(guid, operatorSettings);
     return(Task.CompletedTask);
 }
 public Task LoadSettings(OperatorSettings operatorSettings)
 {
     this.operatorSettings = operatorSettings;
     return(Task.CompletedTask);
 }
        public ResourceEventQueueMetrics(OperatorSettings settings)
        {
            var crd         = CustomEntityDefinitionExtensions.CreateResourceDefinition <TEntity>();
            var labelValues = new[]
            {
                settings.Name,
                crd.Kind,
                crd.Group,
                crd.Version,
                crd.Scope.ToString(),
            };

            Running = Metrics
                      .CreateGauge(
                "operator_resource_event_queue_running",
                "Determines if the resource event queue is up and running (1 == Running, 0 == Stopped)",
                Labels)
                      .WithLabels(labelValues);

            ReadQueueEvents = Metrics
                              .CreateCounter(
                "operator_resource_event_queue_read_events",
                "The count of totally read events from the queue",
                Labels)
                              .WithLabels(labelValues);

            WrittenQueueEvents = Metrics
                                 .CreateCounter(
                "operator_resource_event_queue_write_events",
                "The count of totally written events from the queue",
                Labels)
                                 .WithLabels(labelValues);

            QueueSizeSummary = Metrics
                               .CreateSummary(
                "operator_resource_event_queue_size",
                "Summary of the event queue size over the last 10 minutes",
                Labels)
                               .WithLabels(labelValues);

            QueueSize = Metrics
                        .CreateGauge(
                "operator_resource_event_queue_count",
                "Size of the entity queue",
                Labels)
                        .WithLabels(labelValues);

            CreatedEvents = Metrics
                            .CreateCounter(
                "operator_resource_event_queue_created_events",
                "The count of total 'created' events from the queue",
                Labels)
                            .WithLabels(labelValues);

            UpdatedEvents = Metrics
                            .CreateCounter(
                "operator_resource_event_queue_updated_events",
                "The count of total 'updated' events from the queue",
                Labels)
                            .WithLabels(labelValues);

            NotModifiedEvents = Metrics
                                .CreateCounter(
                "operator_resource_event_queue_not_modified_events",
                "The count of total 'not modified' events from the queue",
                Labels)
                                .WithLabels(labelValues);

            StatusUpdatedEvents = Metrics
                                  .CreateCounter(
                "operator_resource_event_queue_status_updated_events",
                "The count of total 'status updated' events from the queue",
                Labels)
                                  .WithLabels(labelValues);

            FinalizingEvents = Metrics
                               .CreateCounter(
                "operator_resource_event_queue_finalized_events",
                "The count of total 'finalized' events from the queue",
                Labels)
                               .WithLabels(labelValues);

            DeletedEvents = Metrics
                            .CreateCounter(
                "operator_resource_event_queue_deleted_events",
                "The count of total 'deleted' events from the queue",
                Labels)
                            .WithLabels(labelValues);

            RequeuedEvents = Metrics
                             .CreateCounter(
                "operator_resource_event_queue_requeued_events",
                "The count of total events that were requeued by request of the reconciler",
                Labels)
                             .WithLabels(labelValues);

            DelayedQueueSizeSummary = Metrics
                                      .CreateSummary(
                "operator_resource_event_delayed_queue_size",
                "Summary of the delayed (requeue) event queue size over the last 10 minutes",
                Labels)
                                      .WithLabels(labelValues);

            DelayedQueueSize = Metrics
                               .CreateGauge(
                "operator_resource_event_delayed_queue_count",
                "Size of the entity delayed (requeue) queue",
                Labels)
                               .WithLabels(labelValues);

            ErroredEvents = Metrics
                            .CreateCounter(
                "operator_resource_event_queue_errored_events",
                "The count of total events threw an error during reconciliation",
                Labels)
                            .WithLabels(labelValues);

            ErrorQueueSizeSummary = Metrics
                                    .CreateSummary(
                "operator_resource_event_errored_queue_size",
                "Summary of the error queue size over the last 10 minutes",
                Labels)
                                    .WithLabels(labelValues);

            ErrorQueueSize = Metrics
                             .CreateGauge(
                "operator_resource_event_errored_queue_count",
                "Size of the error queue",
                Labels)
                             .WithLabels(labelValues);
        }
Exemplo n.º 23
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Request.QueryString["provider"] != null && Request.QueryString["gameId"] != null)
        {
            var provider = Request.QueryString.Get("provider");
            var gameId   = Request.QueryString.Get("gameId");
            var gameName = Request.QueryString.Get("gameName");
            var gameType = Request.QueryString.Get("gameType");
            var lang     = Request.QueryString.Get("gameLang");
            var lobby    = Request.QueryString.Get("lobby");

            if (provider == Convert.ToString(GameProvider.TTG))
            {
                var url = GameSettings.GetGameUrl(GameProvider.TTG, GameLinkSetting.Real);
                url = url.Replace("{GAME}", gameId)
                      .Replace("{LANG}", lang)
                      .Replace("{LOBBY}", lobby)
                      .Replace("{GAMETYPE}", gameType)
                      .Replace("{GAMENAME}", gameName).Replace("{TOKEN}", userInfo.CurrentSessionId);

                if (XDocument.Load(url).Root.Element("error_code").Value == "0")
                {
                    var gamelink = XDocument.Load(url).Root.Element("redirect_url").Value;
                    Response.Redirect(gamelink, true);
                }
                else
                {
                    var sc = "<script>$(document).ready( function () { window.w88Mobile.Growl.shout('" + XDocument.Load(url).Root.Element("error_msg").Value + "', function () {window.close();} ); });</script>";
                    ClientScript.RegisterClientScriptBlock(this.GetType(), Guid.NewGuid().ToString(), sc, false);
                }
            }
        }

        if (Page.IsPostBack)
        {
            return;
        }

        CheckSupportedCurrency();

        SetTitle(commonCulture.ElementValues.getResourceXPathString("/Products/ClubApollo/Label", commonVariables.ProductsXML));

        var opSettings = new OperatorSettings(System.Configuration.ConfigurationManager.AppSettings.Get("Operator"));
        var addGpi     = Convert.ToBoolean(opSettings.Values.Get("GPIAddOtheClubs"));

        var handler    = new QTHandler(commonVariables.CurrentMemberSessionId, "ClubApollo");
        var qtCategory = handler.Process();

        var ppHandler  = new PPHandler(commonVariables.CurrentMemberSessionId, "ClubApollo", "FundTransfer");
        var ppCategory = ppHandler.Process(true);

        var ttgHandler  = new TTGHandler(commonVariables.CurrentMemberSessionId, "ClubApollo", "FundTransfer");
        var ttgCategory = ttgHandler.Process(true);

        IEnumerable <IGrouping <string, GameCategoryInfo> > games;

        if (addGpi)
        {
            var gpiHandler  = new GPIHandler(commonVariables.CurrentMemberSessionId);
            var gpiCategory = gpiHandler.Process(true);

            qtCategory[0].Current = handler.InsertInjectedGames(gpiCategory, qtCategory[0].Current);

            games = qtCategory.Union(ppCategory).Union(ttgCategory).Union(gpiCategory).GroupBy(x => x.Title);
        }
        else
        {
            games = qtCategory.Union(ppCategory).Union(ttgCategory).GroupBy(x => x.Title);
        }

        var sbGames = new StringBuilder();

        foreach (var category in games)
        {
            sbGames.AppendFormat("<div data-role='collapsible' data-collapsed='false' data-theme='b' data-content-theme='a' data-mini='true'><h4>{0}</h4>", category.Key);

            sbGames.AppendFormat("<div id='div{0}' class='div-product'><div><ul>", category.Key);

            foreach (var item in category)
            {
                AddGames(sbGames, item.New);

                AddGames(sbGames, item.Current);
            }

            sbGames.Append("</ul></div></div></div>");
        }

        divContainer.InnerHtml = Convert.ToString(sbGames);
    }
Exemplo n.º 24
0
 public EventManager(IKubernetesClient client, OperatorSettings settings, ILogger <EventManager> logger)
 {
     _client   = client;
     _settings = settings;
     _logger   = logger;
 }