julee.util.repos.temporal¶
Temporal repository utilities.
This module provides utilities for working with Temporal repositories, including the temporal_activity_registration decorator for automatically wrapping repository methods as Temporal activities.
Submodules¶
Functions¶
|
Class decorator that wraps async protocol methods as Temporal activities. |
Package Contents¶
- julee.util.repos.temporal.temporal_activity_registration(activity_prefix)[source]¶
Class decorator that wraps async protocol methods as Temporal activities.
This decorator inspects the class and wraps all async methods (coroutine functions) that don’t start with underscore as Temporal activities. The activity names are generated using the provided prefix and the method name.
- Parameters:
activity_prefix (str) – Prefix for activity names (e.g., “sample.payment_repo.minio”). Method names will be appended to create full activity names like “sample.payment_repo.minio.process_payment”
- Returns:
The decorated class with all async methods wrapped as Temporal activities
- Return type:
Example
@temporal_activity_registration(“sample.payment_repo.minio”) class TemporalMinioPaymentRepository(MinioPaymentRepository):
pass
# This automatically creates activities for all protocol methods: # - process_payment -> “sample.payment_repo.minio.process_payment” # - get_payment -> “sample.payment_repo.minio.get_payment” # - refund_payment -> “sample.payment_repo.minio.refund_payment”