sec_interp.core.interfaces.settings_store module

Settings storage port used by core services.

The core must not depend on QGIS. GUI/plugin adapters provide the concrete QgsSettings implementation; tests can use the in-memory implementation.

class sec_interp.core.interfaces.settings_store.InMemorySettingsStore(initial: dict[str, Any] | None = None)

Bases: object

Pure-Python settings store for tests and headless core usage.

__init__(initial: dict[str, Any] | None = None) → None

Initialize the store with optional initial values.

setValue(key: str, value: Any) → None

Store a value.

sync() → None

No-op: in-memory values are immediately visible.

value(key: str, default: Any = None, type: Any = None) → Any

Return the stored value or default.

class sec_interp.core.interfaces.settings_store.SettingsStore(*args, **kwargs)

Bases: Protocol

Minimal settings interface compatible with QgsSettings.

setValue(key: str, value: Any) → None

Store a value.

sync() → None

Flush pending writes.

value(key: str, default: Any = None, type: Any = None) → Any

Return the stored value or default.