Namespace Serenity.Global.Infrastructure.Settings
Classes
SerenityAssetLoadingModeProvider
Single global accessor for the currently active SerenityAssetLoadingMode. Components that need to branch on the loading mode (bootstrap installer, asset utilities, audio-mixer cache, editor post-processors) read it through this provider instead of holding their own copy. The provider is intentionally a plain static class with no Unity dependencies so it can be consumed from any layer.
The mode is normally set once during application startup (from
UnitySerenityInstaller.Awake based on a serialized inspector field) and stays
constant for the rest of the session.
Slice A only adds this provider. No existing loader reads it yet, so behaviour for every existing Serenity project is unchanged until later slices wire it in.
UnityActionDefinition
Unity ScriptableObject-based action definition for configuring foundation actions.
Provides a Unity-specific implementation of IFoundationActionDefinition that allows
creating action assets with signals for event-driven architecture.
UnityPersistenceBackendDefinition
Unity ScriptableObject-based pre-boot seam for swapping the persistence data backend without touching
Serenity.Installation.UnitySerenityInstaller.
Assign an instance to UnitySerenityInstaller.PersistenceBackendDefinition to boot with a custom
PersistenceInstaller subclass (e.g. a Postgres
or cloud-save backend) instead of the built-in file backend. Left empty, boot behaves exactly as before.
UnityReflectionCallTaskDefinition
Unity ScriptableObject-based definition for reflection call tasks.
Provides a Unity-specific implementation for configuring tasks that invoke methods
via reflection, supporting both static and instance method calls with parameter passing
and service resolution capabilities.
UnitySerenityAssetLoadingModeProvider
Instance-based implementation of IAssetLoadingModeProvider that delegates
to the static SerenityAssetLoadingModeProvider. Lets consumers depend on
the Business-layer interface (DI, tests) while preserving the static accessor used by
existing call sites in UnityAssetUtils, UnityAddressableUtils,
UnitySerenityInstaller, etc.
The session-wide mode is single-valued, so both this adapter and any direct static reader observe the same value. Mutations through SetMode(SerenityAssetLoadingMode) on this adapter are visible to all readers, static or instance-based.
UnityTaskDefinition
Abstract Unity ScriptableObject-based task definition providing base functionality for initialization tasks. Implements ITaskDefinition and IFoundationSettings to support configurable task creation with criticality levels, weights, and unique identification for the initialization pipeline.
UnityViewDefinition
Base ScriptableObject for any authorable view definition (menus, composite views, …). It unifies the definition types under a single inspectable Unity type so a composite child slot can accept a menu definition or another composite definition through one object-reference field, while runtime code treats them uniformly via IViewDefinition.