qena-shared-lib 0.1.20__tar.gz → 0.1.22__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.
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/PKG-INFO +1 -1
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/pyproject.toml +1 -1
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/mongodb.py +44 -17
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/README.md +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/alias.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/application.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/background.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/cache.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/dependencies/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/dependencies/http.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/dependencies/miscellaneous.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/enums.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/eventbus.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/exception_handling.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/exceptions.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/_base.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/_exception_handlers.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/_request.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/_response.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/_base.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/_consumer.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/_exception_handlers.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/_producer.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/logging.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/py.typed +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_base.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_channel.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_exception_handlers.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_listener.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_pool.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_publisher.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_rpc_client.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/_inbound.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/_outbound.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/redis.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/_base.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/logstash/__init__.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/logstash/_base.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/logstash/_http_sender.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/logstash/_tcp_sender.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/scheduler.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/security.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/sync.py +0 -0
- {qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/utils.py +0 -0
|
@@ -388,25 +388,28 @@ class RepositoryBase(Generic[T]):
|
|
|
388
388
|
session: AsyncClientSession | None = None,
|
|
389
389
|
) -> T | P | None:
|
|
390
390
|
if projection is not None:
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
session=session or self.session,
|
|
398
|
-
)
|
|
391
|
+
document = await self.collection.find_one(
|
|
392
|
+
filter=filter,
|
|
393
|
+
projection=projection.get_projection(),
|
|
394
|
+
skip=skip,
|
|
395
|
+
sort=sort,
|
|
396
|
+
session=session or self.session,
|
|
399
397
|
)
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
await self.collection.find_one(
|
|
398
|
+
else:
|
|
399
|
+
document = await self.collection.find_one(
|
|
403
400
|
filter=filter,
|
|
404
|
-
projection=projection,
|
|
405
401
|
skip=skip,
|
|
406
402
|
sort=sort,
|
|
407
403
|
session=session or self.session,
|
|
408
404
|
)
|
|
409
|
-
|
|
405
|
+
|
|
406
|
+
if document is None:
|
|
407
|
+
return None
|
|
408
|
+
|
|
409
|
+
if projection is not None:
|
|
410
|
+
return projection.from_raw_projected_document(document)
|
|
411
|
+
|
|
412
|
+
return self.document_type.from_raw_document(document)
|
|
410
413
|
|
|
411
414
|
async def replace(
|
|
412
415
|
self, replacement: T, session: AsyncClientSession | None = None
|
|
@@ -584,16 +587,40 @@ class RepositoryBase(Generic[T]):
|
|
|
584
587
|
|
|
585
588
|
return cast(int, await self.collection.estimated_document_count())
|
|
586
589
|
|
|
587
|
-
|
|
590
|
+
@overload
|
|
591
|
+
def aggregate(
|
|
588
592
|
self,
|
|
593
|
+
*,
|
|
589
594
|
aggregation: type[A],
|
|
590
595
|
let: dict[str, Any] | None = None,
|
|
591
596
|
session: AsyncClientSession | None = None,
|
|
592
597
|
) -> AsyncGenerator[A, None]:
|
|
598
|
+
pass
|
|
599
|
+
|
|
600
|
+
@overload
|
|
601
|
+
def aggregate(
|
|
602
|
+
self,
|
|
603
|
+
*,
|
|
604
|
+
aggregation: type[A],
|
|
605
|
+
pipeline: list[Any],
|
|
606
|
+
let: dict[str, Any] | None = None,
|
|
607
|
+
session: AsyncClientSession | None = None,
|
|
608
|
+
) -> AsyncGenerator[A, None]:
|
|
609
|
+
pass
|
|
610
|
+
|
|
611
|
+
async def aggregate(
|
|
612
|
+
self, *_: Any, **kwarg: Any
|
|
613
|
+
) -> AsyncGenerator[Any, None]:
|
|
614
|
+
aggregation = cast(AggregatedDocument, kwarg.get("aggregation"))
|
|
615
|
+
pipeline = kwarg.get("pipeline")
|
|
616
|
+
|
|
617
|
+
if pipeline is None:
|
|
618
|
+
pipeline = aggregation.get_pipeline()
|
|
619
|
+
|
|
593
620
|
async with await self.collection.aggregate(
|
|
594
|
-
pipeline=
|
|
595
|
-
let=let,
|
|
596
|
-
session=session or self.session,
|
|
621
|
+
pipeline=pipeline,
|
|
622
|
+
let=kwarg.get("let"),
|
|
623
|
+
session=kwarg.get("session") or self.session,
|
|
597
624
|
) as cursor:
|
|
598
625
|
async for document in cursor:
|
|
599
626
|
yield aggregation.from_raw_aggregated_document(document)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/dependencies/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/dependencies/miscellaneous.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/http/_exception_handlers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/kafka/_exception_handlers.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
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_publisher.py
RENAMED
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/_rpc_client.py
RENAMED
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/__init__.py
RENAMED
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/_inbound.py
RENAMED
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/rabbitmq/message/_outbound.py
RENAMED
|
File without changes
|
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/__init__.py
RENAMED
|
File without changes
|
{qena_shared_lib-0.1.20 → qena_shared_lib-0.1.22}/src/qena_shared_lib/remotelogging/_base.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
|