airflow.providers.common.messaging.providers.base_provider¶
Classes¶
Base class defining a provider supported by operators/triggers of common-messaging provider. |
Module Contents¶
- class airflow.providers.common.messaging.providers.base_provider.BaseMessageQueueProvider[source]¶
Bases:
abc.ABCBase class defining a provider supported by operators/triggers of common-messaging provider.
To add a new provider supported by the provider, create a new class extending this base class and add it to
MESSAGE_QUEUE_PROVIDERS.Providers can support two dispatch paths: scheme-based matching (set
scheme) and queue-URI-based matching (overridequeue_matches, andtrigger_kwargswhen the trigger needs parameters derived from the queue URI).trigger_classis required in both cases.- scheme_matches(scheme)[source]¶
Return whether a given scheme (string) matches a specific provider’s pattern.
This function must be as specific as possible to avoid collision with other providers. Functions in this provider should NOT overlap with each other in their matching criteria.
- Parameters:
scheme (str) – The scheme identifier
- queue_matches(queue)[source]¶
Return whether a given queue (string) matches a specific provider’s pattern.
Providers that only support scheme-based dispatch keep this default, which matches nothing. Override it to support queue-URI-based dispatch; the implementation must be as specific as possible to avoid collision with other providers. Functions in this provider should NOT overlap with each other in their matching criteria.
- Parameters:
queue (str) – The queue identifier
- trigger_kwargs(queue, **kwargs)[source]¶
Parameters passed to the instance of
trigger_classon queue-URI-based dispatch.Providers that only support scheme-based dispatch keep this default. Override it together with
queue_matcheswhen the trigger needs parameters derived from the queue URI.- Parameters:
queue (str) – The queue identifier