Namespace Serenity.AssetPrefetcher.Infrastructure.Editor.Builder
Classes
CreatePrefetchPolicyWindow
Step-by-step window for creating or updating a PrefetchPolicyRegistry asset and the PrefetchPolicyProfile assets it references. The stepped-wizard scaffolding — the header and breadcrumb, the body scroll, the footer and its error gate — comes from Serenity.Global.Infrastructure.Editor.SerenityStepWizardWindow`1; this window declares only its own step table and what the primary action does. It never mutates an asset directly: the window only collects input, PrefetchPolicyCreator does the actual work. The registry's get-or-create resolution goes through Serenity.Global.Infrastructure.Editor.SerenityWizardTargetAsset/Serenity.Global.Infrastructure.Editor.SerenityWizardTargetAssetGui; the profiles stay resolved by Id within Serenity.AssetPrefetcher.Infrastructure.Editor.Builder.CreatePrefetchPolicyWindow._outputFolder instead — a set of N assets has no single "target" an object field could pick.
PrefetchPolicyCreator
Generates (or updates) a PrefetchPolicyRegistry asset and the set of PrefetchPolicyProfile assets it references, from a single description. Mirrors Serenity.GameCamera.Infrastructure.Editor.Builder.GameCameraSettingsCreator: static class, Input/Result DTOs, Validate, Create with created-paths rollback on failure — resolved and folder-provisioned through the shared SettingsAssetAuthoring engine rather than a private copy of its logic.
Unlike the registry — a single project-wide asset resolved the same way Serenity.GameCamera.Infrastructure.Settings.UnityGameCameraSettings is — the profiles are a set of N assets. Each row resolves to an existing PrefetchPolicyProfile asset with a matching Id already living in ProfilesFolderPath (updated in place) or a brand-new asset created there.
CreatePrefetchPolicyWindow only collects input and renders results; every asset mutation lives here.PrefetchPolicyCreator.Input
Everything needed to create or update the registry and its profiles.
PrefetchPolicyCreator.PreviewResult
A read-only summary of what a Create(Input) call would do, for a Preview step. Never mutates the project.
PrefetchPolicyCreator.ProfileResult
Where one profile row resolved to, before or after Create(Input) runs.
PrefetchPolicyCreator.ProfileRow
One authored profile row.
PrefetchPolicyCreator.Result
Outcome of a Create(Input) call.
Enums
CreatePrefetchPolicyWindow.WizardStep
Public rather than private because C# requires a class's base type to be at least as accessible as the class itself, and this enum is that base type's argument.