cadrumo.application.ledger.action_ports module¶
Explicit ports required by a bucket-scoped ledger action.
The bundle is data, not a resolver: an entrypoint composition root builds it for one bucket and passes its members to the public action it invokes.
- class LedgerActionPorts(operation, transaction_repository, bucket_event_repository, invoice_repository, attachment_store, usage_ratio_profile, usage_ratio_profile_loader, work_unit_repository, calculation_repository, purchase_invoice_evidence_records)[source]¶
Bases:
objectAll persistence ports one ledger action may need for one bucket.
- Parameters:
operation (PinnedAuthorityOperation)
transaction_repository (TransactionCatalogueCoCommitWriterProtocol)
bucket_event_repository (BucketEventHistoryCoCommitWriterProtocol)
invoice_repository (InvoiceCatalogueCoCommitWriterProtocol)
attachment_store (AttachmentStoreProtocol)
usage_ratio_profile (UsageRatioProfile)
usage_ratio_profile_loader (UsageRatioProfileLoader)
work_unit_repository (WorkUnitCatalogueRepositoryProtocol)
calculation_repository (CalculationRevisionCatalogueRepositoryProtocol)
purchase_invoice_evidence_records (tuple[PurchaseInvoiceEvidence, ...])
-
operation:
PinnedAuthorityOperation¶
-
transaction_repository:
TransactionCatalogueCoCommitWriterProtocol¶
-
bucket_event_repository:
BucketEventHistoryCoCommitWriterProtocol¶
-
invoice_repository:
InvoiceCatalogueCoCommitWriterProtocol¶
-
attachment_store:
AttachmentStoreProtocol¶
-
usage_ratio_profile:
UsageRatioProfile¶
-
usage_ratio_profile_loader:
UsageRatioProfileLoader¶
-
work_unit_repository:
WorkUnitCatalogueRepositoryProtocol¶
-
calculation_repository:
CalculationRevisionCatalogueRepositoryProtocol¶
-
purchase_invoice_evidence_records:
tuple[PurchaseInvoiceEvidence,...]¶