buz 2.22.0__tar.gz → 2.22.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {buz-2.22.0 → buz-2.22.1}/PKG-INFO +1 -1
- {buz-2.22.0 → buz-2.22.1}/pyproject.toml +1 -1
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/buz_kafka_event_bus.py +5 -1
- buz-2.22.1/src/buz/kafka/infrastructure/serializers/implementations/cdc_partition_key_serializer.py +19 -0
- buz-2.22.1/src/buz/kafka/infrastructure/serializers/partitiion_key_generator.py +9 -0
- {buz-2.22.0 → buz-2.22.1}/LICENSE +0 -0
- {buz-2.22.0 → buz-2.22.1}/README.md +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/base_command_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/command_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/command_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/middleware/base_handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/middleware/handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/middleware/handle_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/self_process/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/self_process/self_process_command_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/command.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/more_than_one_command_handler_related_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/base_command_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/command_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/command_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/middleware/base_handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/middleware/handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/middleware/handle_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/self_process/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/self_process/self_process_command_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/synced_async/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/synced_async/synced_async_command_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/async_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/async_event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/async_subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/async_worker.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/base_async_subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/base_subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/dead_letter_queue/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/dead_letter_queue/dlq_criteria.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/dead_letter_queue/dlq_record.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/dead_letter_queue/dlq_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/event.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/event_not_published_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/event_restore_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/subscribers_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/term_signal_interruption_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/exceptions/worker_execution_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/async_buz_kafka_event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/base_buz_aiokafka_async_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/buz_aiokafka_async_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/buz_aiokafka_multi_threaded_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/consume_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/consume_strategy/consume_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/consume_strategy/kafka_on_fail_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/consume_strategy/topic_and_subscription_group_per_subscriber_kafka_consumer_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/exceptions/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/exceptions/kafka_event_bus_config_not_valid_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/exceptions/max_consumer_retry_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/exceptions/retry_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/kafka_event_async_subscriber_executor.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/kafka_event_subscriber_executor.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/kafka_event_sync_subscriber_executor.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/models/cdc_process_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/models/kafka_delivery_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/publish_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/publish_strategy/publish_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/publish_strategy/topic_per_event_kafka_publish_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/allowed_kombu_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/consume_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/consume_strategy/consume_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/consume_strategy/queue_per_subscriber_consume_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/kombu_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/kombu_event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/models/kombu_delivery_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/publish_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/publish_strategy/fanout_exchange_per_event_publish_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/publish_strategy/publish_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/retry_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/retry_strategy/publish_retry_policy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/retry_strategy/simple_publish_retry_policy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/models/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/models/consuming_task.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/models/delivery_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/models/execution_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/models/process_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/queue/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/meta_base_subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/meta_subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_consume_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_consume_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_publish_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_publish_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/base_async_consume_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/base_consume_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/base_publish_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/consume_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/consume_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/exceptions/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/exceptions/event_already_in_progress_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/publish_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/publish_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/async_execution_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/async_self_process_execution_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/cyclic_iterator_execution_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/execution_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/self_process_execution_strategy.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/consume_retrier.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/consumed_event_retry.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/consumed_event_retry_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/max_retries_consume_retrier.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/max_retries_negative_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/retry/reject_callback.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/subscriber.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/sync/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/sync/models/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/sync/models/sync_delivery_context.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/sync/sync_event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/event_to_outbox_record_translator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/fqn_to_event_mapper.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/deliverable_records_outbox_criteria_factory.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/outbox_criteria.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/outbox_criteria_factory.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/outbox_sorting_criteria.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_finder/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_finder/outbox_record_stream_finder.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_finder/polling_outbox_record_stream_finder.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_to_event_translator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/abstract_outbox_record_validator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/outbox_record_size_not_allowed_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/outbox_record_validation_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/outbox_record_validator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/size_outbox_record_validator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/transactional_outbox_event_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/transactional_outbox_worker.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/event/worker.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/consumer_group_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_all_partition_assigned_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_valid_kafka_message_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_valid_partition_number_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/topic_already_created_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/topic_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/auto_create_topic_configuration.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/consumer_initial_offset_position.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/create_kafka_topic.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_connection_config.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_connection_credentials.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_connection_plain_text_credentials.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_connection_sasl_credentials.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_consumer_record.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_poll_record.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_supported_compression_type.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_supported_sasl_mechanisms.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_supported_security_protocols.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/services/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/services/async_kafka_producer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/services/kafka_admin_client.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/services/kafka_admin_test_client.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/services/kafka_producer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/aiokafka_consumer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/aiokafka_producer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/rebalance/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/rebalance/kafka_callback_rebalancer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/translators/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/aiokafka/translators/consumer_initial_offset_position_translator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/cdc/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/cdc/cdc_message.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/cdc/cdc_payload.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/cdc/cdc_schema.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/byte_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/bytes_to_message_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/cdc/cannot_decode_cdc_message_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/cdc/cannot_restore_event_from_cdc_payload_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/cdc/cdc_record_bytes_to_cdc_payload_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/cdc/cdc_record_bytes_to_event_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/json_byte_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/json_bytes_to_message_deserializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/interfaces/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/interfaces/async_connection_manager.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/interfaces/connection_manager.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/exception/consumer_interrupted_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/kafka_python_admin_client.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/kafka_python_admin_test_client.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/kafka_python_producer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/translators/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/kafka_python/translators/consumer_initial_offset_position_translator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/serializers/byte_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/serializers/implementations/cdc_record_bytes_to_event_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/serializers/implementations/json_byte_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/serializers/kafka_header_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/handler_fqn_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/locator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/message_fqn_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/pypendency/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/pypendency/container_locator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/pypendency/container_locator_resolution_configuration.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/pypendency/handler_not_found_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/pypendency/handler_not_registered_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/sync/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/sync/handler_already_registered_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/sync/handler_not_registered_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/locator/sync/instance_locator.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/message.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/metadata.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/middleware/middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/middleware/middleware_chain_builder.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/py.typed +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/base_query_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/middleware/base_handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/middleware/handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/middleware/handle_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/query_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/query_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/self_process/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/asynchronous/self_process/self_process_query_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/more_than_one_query_handler_related_exception.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/query.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/query_response.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/base_query_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/middleware/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/middleware/base_handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/middleware/handle_middleware.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/middleware/handle_middleware_chain_resolver.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/query_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/query_handler.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/self_process/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/self_process/self_process_query_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/synced_async/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/query/synchronous/synced_async/synced_async_query_bus.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/queue/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/queue/in_memory/in_memory_multiqueue_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/queue/in_memory/in_memory_queue_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/queue/multiqueue_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/queue/queue_repository.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/serializer/message_to_bytes_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/serializer/message_to_json_bytes_serializer.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/wrapper/__init__.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/wrapper/async_to_sync.py +0 -0
- {buz-2.22.0 → buz-2.22.1}/src/buz/wrapper/event_loop.py +0 -0
|
@@ -16,6 +16,8 @@ from buz.kafka.domain.models.auto_create_topic_configuration import AutoCreateTo
|
|
|
16
16
|
from buz.kafka.domain.models.create_kafka_topic import CreateKafkaTopic
|
|
17
17
|
from buz.kafka.domain.services.kafka_admin_client import KafkaAdminClient
|
|
18
18
|
from buz.kafka.domain.services.kafka_producer import KafkaProducer
|
|
19
|
+
from buz.kafka.infrastructure.serializers.implementations.cdc_partition_key_serializer import CDCPartitionKeySerializer
|
|
20
|
+
from buz.kafka.infrastructure.serializers.partitiion_key_generator import PartitionKeySerializer
|
|
19
21
|
|
|
20
22
|
|
|
21
23
|
class BuzKafkaEventBus(EventBus):
|
|
@@ -28,6 +30,7 @@ class BuzKafkaEventBus(EventBus):
|
|
|
28
30
|
kafka_admin_client: Optional[KafkaAdminClient] = None,
|
|
29
31
|
publish_middlewares: Optional[list[PublishMiddleware]] = None,
|
|
30
32
|
auto_create_topic_configuration: Optional[AutoCreateTopicConfiguration] = None,
|
|
33
|
+
partition_key_generator: Optional[PartitionKeySerializer] = None,
|
|
31
34
|
):
|
|
32
35
|
self.__publish_middleware_chain_resolver = PublishMiddlewareChainResolver(publish_middlewares or [])
|
|
33
36
|
self.__publish_strategy = publish_strategy
|
|
@@ -36,6 +39,7 @@ class BuzKafkaEventBus(EventBus):
|
|
|
36
39
|
self.__kafka_admin_client = kafka_admin_client
|
|
37
40
|
self.__auto_create_topic_configuration = auto_create_topic_configuration
|
|
38
41
|
self.__logger = logger
|
|
42
|
+
self.__partition_key_generator: PartitionKeySerializer = partition_key_generator or CDCPartitionKeySerializer()
|
|
39
43
|
self.__check_kafka_admin_client_is_needed()
|
|
40
44
|
|
|
41
45
|
def __check_kafka_admin_client_is_needed(self) -> None:
|
|
@@ -74,7 +78,7 @@ class BuzKafkaEventBus(EventBus):
|
|
|
74
78
|
message=event,
|
|
75
79
|
headers=headers,
|
|
76
80
|
topic=topic,
|
|
77
|
-
partition_key=
|
|
81
|
+
partition_key=self.__partition_key_generator.generate_key(event),
|
|
78
82
|
)
|
|
79
83
|
except Exception as exc:
|
|
80
84
|
raise EventNotPublishedException(event) from exc
|
buz-2.22.1/src/buz/kafka/infrastructure/serializers/implementations/cdc_partition_key_serializer.py
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from buz.event.event import Event
|
|
4
|
+
from buz.kafka.infrastructure.serializers.implementations.json_byte_serializer import JSONByteSerializer
|
|
5
|
+
from buz.kafka.infrastructure.serializers.partitiion_key_generator import PartitionKeySerializer
|
|
6
|
+
|
|
7
|
+
# This is a static string because the order matters and we can not trust that json encoder libraries are deterministic
|
|
8
|
+
PAYLOAD_CDC_SCHEMA = r"""{"schema":{"type":"string","optional":true},"payload":"[partition_key]"}"""
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class CDCPartitionKeySerializer(PartitionKeySerializer):
|
|
12
|
+
def __init__(self) -> None:
|
|
13
|
+
self.__json_serializer = JSONByteSerializer()
|
|
14
|
+
|
|
15
|
+
def __generate_payload_schema(self, partition_key: str) -> str:
|
|
16
|
+
return PAYLOAD_CDC_SCHEMA.replace("[partition_key]", partition_key)
|
|
17
|
+
|
|
18
|
+
def generate_key(self, event: Event) -> str:
|
|
19
|
+
return self.__generate_payload_schema(event.partition_key())
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/command/asynchronous/self_process/self_process_command_bus.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/command/more_than_one_command_handler_related_exception.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/middleware/handle_middleware_chain_resolver.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/self_process/self_process_command_bus.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/command/synchronous/synced_async/synced_async_command_bus.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/async_buz_kafka_event_bus.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/base_buz_aiokafka_async_consumer.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/buz_aiokafka_async_consumer.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/consume_strategy/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/exceptions/retry_exception.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/kafka_event_subscriber_executor.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/models/cdc_process_context.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/models/kafka_delivery_context.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/buz_kafka/publish_strategy/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/consume_strategy/consume_strategy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/models/kombu_delivery_context.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/publish_strategy/publish_strategy.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/infrastructure/kombu/retry_strategy/publish_retry_policy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_consume_middleware_chain_resolver.py
RENAMED
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/async_publish_middleware_chain_resolver.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/middleware/exceptions/event_already_in_progress_exception.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/strategies/execution_strategy/async_execution_strategy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/event_to_outbox_record_translator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_criteria/outbox_criteria.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_finder/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_to_event_translator.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/outbox_record_validation/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/event/transactional_outbox/transactional_outbox_event_bus.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/consumer_group_not_found_exception.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_all_partition_assigned_exception.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_valid_kafka_message_exception.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/not_valid_partition_number_exception.py
RENAMED
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/exceptions/topic_already_created_exception.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/domain/models/kafka_connection_plain_text_credentials.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{buz-2.22.0 → buz-2.22.1}/src/buz/kafka/infrastructure/deserializers/implementations/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|