Exemple #1
0
        /// <summary>
        /// Initializes all <see cref="ISubscription"/>s
        /// </summary>
        /// <param name="cancellationToken">A <see cref="CancellationToken"/></param>
        /// <returns>A new awaitable <see cref="Task"/></returns>
        protected virtual async Task InitializeSubscriptionsAsync(CancellationToken cancellationToken = default)
        {
            KubernetesList <Resources.Subscription> subscriptions = await this.KubernetesClient.ListNamespacedCustomObjectAsync <Resources.Subscription>(EventingDefaults.Resources.Subscription.Group, EventingDefaults.Resources.Subscription.Version, this.Options.Pod.Namespace, EventingDefaults.Resources.Subscription.Plural, cancellationToken : cancellationToken);

            foreach (Resources.Subscription subscription in subscriptions.Items)
            {
                this.RegisterSubscription(subscription);
            }
        }
Exemple #2
0
        /// <summary>
        /// Initializes all <see cref="IChannel"/>s
        /// </summary>
        /// <param name="cancellationToken">A <see cref="CancellationToken"/></param>
        /// <returns>A new awaitable <see cref="Task"/></returns>
        protected virtual async Task InitializeChannelsAsync(CancellationToken cancellationToken = default)
        {
            KubernetesList <Resources.Channel> channels = await this.KubernetesClient.ListNamespacedCustomObjectAsync <Resources.Channel>(EventingDefaults.Resources.Channel.Group, EventingDefaults.Resources.Channel.Version, this.Options.Pod.Namespace, EventingDefaults.Resources.Channel.Plural, cancellationToken : cancellationToken);

            foreach (Resources.Channel channel in channels.Items)
            {
                this.RegisterChannel(channel);
            }
        }
Exemple #3
0
        public async Task <IActionResult> ListAsync(ListParameters parameters)
        {
            var list = await _testCluster.ListResourcesAsync(string.Empty, Version, Plural, parameters);

            var result = new KubernetesList <ResourceObject>(
                apiVersion: Version,
                kind: "PodList",
                metadata: new V1ListMeta(
                    continueProperty: list.Continue,
                    remainingItemCount: null,
                    resourceVersion: list.ResourceVersion),
                items: list.Items);

            return(new ObjectResult(result));
        }
Exemple #4
0
        /// <inheritdoc/>
        public virtual async Task InitializeAsync(CancellationToken cancellationToken = default)
        {
            this.Logger.LogInformation("Initializing event registry...");
            try
            {
                EventTypeDefinition        eventTypeDefinition = EventingDefaults.Resources.EventType;
                KubernetesList <EventType> eventTypes          = await this.KubernetesClient.ListNamespacedCustomObjectAsync <EventType>(eventTypeDefinition.Group, eventTypeDefinition.Version, this.Options.Pod.Namespace, eventTypeDefinition.Plural, watch : false, cancellationToken : cancellationToken);

                this._EventTypes = new ConcurrentBag <EventType>(eventTypes.Items);
            }
            catch (Exception ex)
            {
                this.Logger.LogError($"An error occured while initializing the event registry{Environment.NewLine}{{ex}}", ex.Message);
                throw;
            }
            this.Logger.LogInformation("Event registry initialized");
        }