Source code for aeat.adapters.persistence.profile._filing_runtime
"""Runtime-backed repository helpers shared by the filing persistence adapters.Shared private helpers for the sibling filing repositories(:mod:`~adapters.persistence.profile.filing_drafts` and``filing_amendments``): a bucket-id resolver and a runtime factory thatreturns a:class:`~adapters.persistence.storage.SecureObjectRepository` bound tothe active profile bucket. Both live in the persistence adapter alongside therepositories they serve, so the secure-object coupling is a same-layer``adapters -> adapters.persistence.storage`` import rather than a``domain -> adapters`` violation.See Also: :func:`~core.resolve_repository_bucket_id` Shared resolver for explicit-or-active profile bucket ids. :func:`~adapters.persistence.storage.secure_object_repository_for_bucket` Runtime storage factory used after the filing bucket id is resolved. :mod:`~adapters.persistence.profile.filing_drafts` Draft repository consumer of these filing runtime helpers. :mod:`~application.filing._runtime_repository` Application-layer sibling helper that keeps application filing imports out of adapter module import time. :class:`~domain.filing.ModeloDraftRepositoryProtocol` Domain repository port implemented by the filing draft adapter."""from__future__importannotationsfromtypingimportTYPE_CHECKINGfrom....coreimportresolve_repository_bucket_idfrom....domain.filingimportModeloDraftErrorfrom..storageimportsecure_object_repository_for_bucketifTYPE_CHECKING:# pragma: no cover — type-only importsfrom..storageimportSecureObjectRepository
[docs]defresolve_filing_repository_bucket_id(bucket_id:str|None)->str:"""Return an explicit or active profile bucket id for filing repositories."""returnresolve_repository_bucket_id(bucket_id,error_type=ModeloDraftError)
[docs]defsecure_objects_for_filing_bucket(bucket_id:str)->SecureObjectRepository:"""Return runtime-created secure-object storage for ``bucket_id``. Returns: A :class:`~adapters.persistence.storage.SecureObjectRepository` scoped to the given filing bucket. """returnsecure_object_repository_for_bucket(bucket_id)