Table of Contents

Class SettingsBagAutosaveModule

Namespace
Nucs.JsonSettings.Autosave
Assembly
Nucs.JsonSettings.dll

The module SettingsBag attaches while its dictionary-backed autosave is enabled: the neutral suspension state of SuspensionModule and nothing else.

public class SettingsBagAutosaveModule : SuspensionModule, IDisposable
Inheritance
SettingsBagAutosaveModule
Implements
Inherited Members

Remarks

Its own type on purpose. The bag used to attach the woven path's AutosaveModule, which pinned that type -- monitored-property set, notification-binder slot and all -- inside the base package even though the bag uses none of it. The bag's autosave is driven entirely by SettingsBag.TrySave consulting the inherited gates, and by the repopulate bracketing SuspensionModule wires up on attach; the woven module now lives in Nucs.JsonSettings.Autosave and never appears on a bag, so that package's is AutosaveModule resolution scans (the woven advice, the notification binder) can never mistake a bag's module for a woven one. Its SuspendAutosave() extension still drives this module -- it targets the shared SuspensionModule base.