eventemitter

package
v2.14.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2024 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AzureEventGridTopicHandler added in v2.14.0

type AzureEventGridTopicHandler struct {
	Context     context.Context
	Endpoint    string
	ClusterName string
	Client      *publisher.Client
	// contains filtered or unexported fields
}

func NewAzureEventGridTopicHandler added in v2.14.0

func NewAzureEventGridTopicHandler(context context.Context, clusterName string, spec *eventingv1alpha1.AzureEventGridTopicSpec, authParams map[string]string, podIdentity kedav1alpha1.AuthPodIdentity, logger logr.Logger) (*AzureEventGridTopicHandler, error)

func (*AzureEventGridTopicHandler) CloseHandler added in v2.14.0

func (a *AzureEventGridTopicHandler) CloseHandler()

func (*AzureEventGridTopicHandler) EmitEvent added in v2.14.0

func (a *AzureEventGridTopicHandler) EmitEvent(eventData eventdata.EventData, failureFunc func(eventData eventdata.EventData, err error))

func (*AzureEventGridTopicHandler) GetActiveStatus added in v2.14.0

func (a *AzureEventGridTopicHandler) GetActiveStatus() metav1.ConditionStatus

func (*AzureEventGridTopicHandler) SetActiveStatus added in v2.14.0

func (a *AzureEventGridTopicHandler) SetActiveStatus(status metav1.ConditionStatus)

type CloudEventHTTPHandler

type CloudEventHTTPHandler struct {
	// contains filtered or unexported fields
}

func NewCloudEventHTTPHandler

func NewCloudEventHTTPHandler(context context.Context, clusterName string, uri string, logger logr.Logger) (*CloudEventHTTPHandler, error)

func (*CloudEventHTTPHandler) CloseHandler

func (c *CloudEventHTTPHandler) CloseHandler()

func (*CloudEventHTTPHandler) EmitEvent

func (c *CloudEventHTTPHandler) EmitEvent(eventData eventdata.EventData, failureFunc func(eventData eventdata.EventData, err error))

func (*CloudEventHTTPHandler) GetActiveStatus

func (c *CloudEventHTTPHandler) GetActiveStatus() metav1.ConditionStatus

func (*CloudEventHTTPHandler) SetActiveStatus

func (c *CloudEventHTTPHandler) SetActiveStatus(status metav1.ConditionStatus)

type EmitData

type EmitData struct {
	Reason  string `json:"reason"`
	Message string `json:"message"`
}

EmitData defines the data structure for emitting event

type EventDataHandler

type EventDataHandler interface {
	EmitEvent(eventData eventdata.EventData, failureFunc func(eventData eventdata.EventData, err error))
	SetActiveStatus(status metav1.ConditionStatus)
	GetActiveStatus() metav1.ConditionStatus
	CloseHandler()
}

EventDataHandler defines the behavior for different event handlers

type EventEmitter

type EventEmitter struct {
	// contains filtered or unexported fields
}

EventEmitter is the main struct for eventemitter package

func (*EventEmitter) DeleteCloudEventSource

func (e *EventEmitter) DeleteCloudEventSource(cloudEventSource *eventingv1alpha1.CloudEventSource) error

DeleteCloudEventSource will stop the event loop and clean event handlers in cache.

func (*EventEmitter) Emit

func (e *EventEmitter) Emit(object runtime.Object, namesapce types.NamespacedName, eventType string, cloudeventType eventingv1alpha1.CloudEventType, reason, message string)

Emit is emitting event to both local kubernetes and custom CloudEventSource handler. After emit event to local kubernetes, event will inqueue and waitng for handler's consuming.

func (*EventEmitter) HandleCloudEventSource

func (e *EventEmitter) HandleCloudEventSource(ctx context.Context, cloudEventSource *eventingv1alpha1.CloudEventSource) error

HandleCloudEventSource will create CloudEventSource handlers that defined in spec and start an event loop once handlers are created successfully.

type EventFilter added in v2.14.0

type EventFilter struct {
	IncludedEventTypes []eventingv1alpha1.CloudEventType

	ExcludedEventTypes []eventingv1alpha1.CloudEventType
}

EventFilter defines the behavior for different event handlers

func NewEventFilter added in v2.14.0

func NewEventFilter(includedEventTypes []eventingv1alpha1.CloudEventType, excludedEventTypes []eventingv1alpha1.CloudEventType) *EventFilter

NewEventFilter creates a new EventFilter

func (*EventFilter) FilterEvent added in v2.14.0

func (e *EventFilter) FilterEvent(eventType eventingv1alpha1.CloudEventType) bool

FilterEvent returns true if the event is filtered and should not be handled

type EventHandler

type EventHandler interface {
	DeleteCloudEventSource(cloudEventSource *eventingv1alpha1.CloudEventSource) error
	HandleCloudEventSource(ctx context.Context, cloudEventSource *eventingv1alpha1.CloudEventSource) error
	Emit(object runtime.Object, namesapce types.NamespacedName, eventType string, cloudeventType eventingv1alpha1.CloudEventType, reason string, message string)
}

EventHandler defines the behavior for EventEmitter clients

func NewEventEmitter

func NewEventEmitter(client client.Client, recorder record.EventRecorder, clusterName string, secretsLister corev1listers.SecretLister) EventHandler

NewEventEmitter creates a new EventEmitter

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL