Mercurial > libervia-backend
comparison libervia/backend/memory/sqla.py @ 4367:b93f95efe329
storage: Add a `thread_id` filter to `history_get`:
rel 457
author | Goffi <goffi@goffi.org> |
---|---|
date | Tue, 06 May 2025 00:34:01 +0200 |
parents | 1ef32316a55e |
children | 2bdf0c16d852 |
comparison
equal
deleted
inserted
replaced
4366:1ef32316a55e | 4367:b93f95efe329 |
---|---|
663 stmt = stmt.where(History.stanza_id.is_not(None)) | 663 stmt = stmt.where(History.stanza_id.is_not(None)) |
664 if "id" in filters: | 664 if "id" in filters: |
665 stmt = stmt.where(History.uid == filters["id"]) | 665 stmt = stmt.where(History.uid == filters["id"]) |
666 if "origin_id" in filters: | 666 if "origin_id" in filters: |
667 stmt = stmt.where(History.origin_id == filters["origin_id"]) | 667 stmt = stmt.where(History.origin_id == filters["origin_id"]) |
668 if "thread_id" in filters: | |
669 stmt = stmt.where(Thread.thread_id == filters["thread_id"]) | |
668 | 670 |
669 if limit is not None: | 671 if limit is not None: |
670 stmt = stmt.limit(limit) | 672 stmt = stmt.limit(limit) |
671 | 673 |
672 async with self.session() as session: | 674 async with self.session() as session: |
690 Subject(subject=mess, language=lang) for lang, mess in data["subject"].items() | 692 Subject(subject=mess, language=lang) for lang, mess in data["subject"].items() |
691 ] | 693 ] |
692 if "thread" in data["extra"]: | 694 if "thread" in data["extra"]: |
693 thread = Thread( | 695 thread = Thread( |
694 thread_id=data["extra"]["thread"], | 696 thread_id=data["extra"]["thread"], |
695 parent_id=data["extra"].get["thread_parent"], | 697 parent_id=data["extra"].get("thread_parent"), |
696 ) | 698 ) |
697 else: | 699 else: |
698 thread = None | 700 thread = None |
699 try: | 701 try: |
700 async with self.session() as session: | 702 async with self.session() as session: |