Class CreateInitializationPipelineProfileWindow
Step-by-step window for creating (or updating) one project's UnityInitializationPipelineProfile — the ordered list of install tasks run at boot. 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 itself: the window only collects input and renders results, InitializationPipelineProfileCreator does the actual validation and generation work.
Reuses the whole task-authoring ecosystem instead of reimplementing it. A "new install task" row
creates its task asset through the exact same Serenity.Global.Infrastructure.Editor.InitializationPipeline.InstallTaskAuthoring engine every aggregate
wizard's embedded "Initialization Pipeline Task" section already uses. The Summary step's dry-run summary
runs the exact same InitializationPipelineCriticalityRule both
InitializationPipelineService.RunAsync and SerenityInitPipelineSimulatorWindow use,
via PreviewFinalTaskOrder(Input) — and offers an "Open
Pipeline Simulator" button into that same window for interactive fail-injection dry-runs this wizard's own
inline summary does not attempt (it always assumes every task succeeds).
Namespace: Serenity.InitializationPipeline.Infrastructure.Editor.Builder
Assembly: Serenity.UnityInitializationPipeline.Infrastructure.Editor.dll
Syntax
public sealed class CreateInitializationPipelineProfileWindow : SerenityStepWizardWindow<CreateInitializationPipelineProfileWindow.WizardStep>
Constructors
CreateInitializationPipelineProfileWindow()
Declaration
public CreateInitializationPipelineProfileWindow()
Properties
PrimaryButtonLabel
Re-read every repaint off Serenity.InitializationPipeline.Infrastructure.Editor.Builder.CreateInitializationPipelineProfileWindow._cachedPreview, so the button says "Update" the moment the typed Profile Id resolves to a profile that already exists.
Declaration
protected override string PrimaryButtonLabel { get; }
Property Value
| Type | Description |
|---|---|
| string |
WindowTitle
Declaration
protected override string WindowTitle { get; }
Property Value
| Type | Description |
|---|---|
| string |
Methods
BuildSteps()
Declaration
protected override WizardStepDescriptor<CreateInitializationPipelineProfileWindow.WizardStep>[] BuildSteps()
Returns
| Type | Description |
|---|---|
| WizardStepDescriptor<WizardStep>[] |
OnPrimaryAction()
Lands on Done through the ungated Serenity.Global.Infrastructure.Editor.SerenityStepWizardWindow`1.PingAndGoTo(System.String,`0,System.Boolean) rather than Serenity.Global.Infrastructure.Editor.SerenityStepWizardWindow`1.FinishWithAsset(System.String,`0): this window never installed a step-error gate, so its old jump to Done was ungated in practice, and it never latched a terminal run — its Done panel offers no "Create Another" to clear one again. Re-running against the profile just written is an insert-in-place, not a collision, so the Tasks step's gate can stay live.
Declaration
protected override void OnPrimaryAction()
Open()
Declaration
public static void Open()