papfa package¶
Subpackages¶
Submodules¶
papfa.cli module¶
Console script for papfa.
papfa.config module¶
- class papfa.config.KafkaConfig(bootstrap_servers: List[str], sasl_mechanism: str, security_protocol: str, sasl_username: str, sasl_password: str)[source]¶
Bases:
object- bootstrap_servers: List[str]¶
- sasl_mechanism: str¶
- sasl_password: str¶
- sasl_username: str¶
- security_protocol: str¶
- class papfa.config.KafkaConsumerConfig(group_id: str, deserializer: confluent_kafka.schema_registry.avro.AvroDeserializer, kafka_config: papfa.config.KafkaConfig, topics: List[str], deserialize_key: bool = False)[source]¶
Bases:
object- deserialize_key: bool = False¶
- deserializer: AvroDeserializer¶
- group_id: str¶
- kafka_config: KafkaConfig¶
- topics: List[str]¶
- class papfa.config.KafkaProducerConfig(serializer: confluent_kafka.schema_registry.avro.AvroSerializer, kafka_config: papfa.config.KafkaConfig)[source]¶
Bases:
object- kafka_config: KafkaConfig¶
- serializer: AvroSerializer¶
papfa.consumers module¶
- class papfa.consumers.BatchConfig(size: int, timeout: datetime.timedelta)[source]¶
Bases:
object- size: int¶
- timeout: timedelta¶
- class papfa.consumers.ConfluentAvroDeserializer(schema_registry_client: SchemaRegistryClient)[source]¶
Bases:
Deserializer
- class papfa.consumers.KafkaConsumer(kafka_consumer_config: KafkaConsumerConfig, message_handler: MessageHandler, middlewares: Optional[List[ConsumerMiddleware]] = None, batch_config: BatchConfig = BatchConfig(size=100, timeout=datetime.timedelta(seconds=1)), raise_exception: bool = False, consumer_kwargs: Optional[dict] = None)[source]¶
Bases:
BaseConsumer- property consumer¶
- property consumer_name¶
- papfa.consumers.consumer(topic: Optional[Union[str, List[str]]] = None, group_id: Optional[str] = None, satisfy_method: Optional[Callable] = None, batch_config: Optional[BatchConfig] = None, consumer_strategy: Optional[BaseConsumer] = None, deserialize_key: bool = False, kafka_config: Optional[KafkaConfig] = None, consumer_kwargs: Optional[dict] = None)[source]¶
papfa.dtos module¶
papfa.papfa module¶
Main module.
papfa.producers module¶
- class papfa.producers.KafkaMessageProducer(topic: str, kafka_producer_config: KafkaProducerConfig, middlewares: Optional[List[ProducerMiddleware]] = None, batch_config: Optional[BatchConfig] = None, producer_kwargs: Optional[dict] = None)[source]¶
Bases:
MessageProducer- produce(message: Record, on_delivery: Optional[callable] = None, force_flush: bool = False) None[source]¶
- property producer¶
- class papfa.producers.KafkaMessageTransactionalProducer(topic: str, kafka_producer_config: KafkaProducerConfig, middlewares: Optional[List[ProducerMiddleware]] = None, batch_config: Optional[BatchConfig] = None, transaction_id: Optional[str] = None, producer_kwargs: Optional[dict] = None)[source]¶
Bases:
KafkaMessageProducer
- papfa.producers.get_message_producer(topic, avro_model: Type[AvroModel], kafka_producer_config: Optional[KafkaProducerConfig] = None, middlewares: Optional[List[ProducerMiddleware]] = None, batch_config=None, producer_kwargs=None)[source]¶
- papfa.producers.get_message_transactional_producer(topic, avro_model: Type[AvroModel], kafka_producer_config: Optional[KafkaProducerConfig] = None, middlewares: Optional[List[ProducerMiddleware]] = None, transaction_id='', batch_config=None, producer_kwargs=None)[source]¶
papfa.settings module¶
papfa.utils module¶
Module contents¶
Top-level package for papfa.
- papfa.consumer(topic: Optional[Union[str, List[str]]] = None, group_id: Optional[str] = None, satisfy_method: Optional[Callable] = None, batch_config: Optional[BatchConfig] = None, consumer_strategy: Optional[BaseConsumer] = None, deserialize_key: bool = False, kafka_config: Optional[KafkaConfig] = None, consumer_kwargs: Optional[dict] = None)[source]¶
- papfa.get_message_producer(topic, avro_model: Type[AvroModel], kafka_producer_config: Optional[KafkaProducerConfig] = None, middlewares: Optional[List[ProducerMiddleware]] = None, batch_config=None, producer_kwargs=None)[source]¶
- papfa.get_message_transactional_producer(topic, avro_model: Type[AvroModel], kafka_producer_config: Optional[KafkaProducerConfig] = None, middlewares: Optional[List[ProducerMiddleware]] = None, transaction_id='', batch_config=None, producer_kwargs=None)[source]¶