Get a setting value by key. Args: key: The setting key. default: Default value if setting doesn't exist or on DB error. Returns: The setting value, or default if not found or on error.
(key: str, default: str | None = None)
| 547 | # ============================================================================= |
| 548 | |
| 549 | def get_setting(key: str, default: str | None = None) -> str | None: |
| 550 | """ |
| 551 | Get a setting value by key. |
| 552 | |
| 553 | Args: |
| 554 | key: The setting key. |
| 555 | default: Default value if setting doesn't exist or on DB error. |
| 556 | |
| 557 | Returns: |
| 558 | The setting value, or default if not found or on error. |
| 559 | """ |
| 560 | try: |
| 561 | _, SessionLocal = _get_engine() |
| 562 | session = SessionLocal() |
| 563 | try: |
| 564 | setting = session.query(Settings).filter(Settings.key == key).first() |
| 565 | return setting.value if setting else default |
| 566 | finally: |
| 567 | session.close() |
| 568 | except Exception as e: |
| 569 | logger.warning("Failed to read setting '%s': %s", key, e) |
| 570 | return default |
| 571 | |
| 572 | |
| 573 | def set_setting(key: str, value: str) -> None: |
nothing calls this directly
no test coverage detected