Class ShippedSystemAssetCatalog
Every shipped package asset that belongs to one installable system, per
IsMemberOf(string, IReadOnlyCollection<string>, string, IReadOnlyList<string>, IReadOnlyList<(string PathContains, string Label)>). Scans every asset under
Serenity.Global.Infrastructure.Editor.SerenityEditorPaths.PackageRoots once (AssetDatabase.FindAssets(string.Empty, ...)),
and decides each one's labels the same way a real Retag All would need to: the union of
Serenity.Global.Infrastructure.Editor.Utils.UnityAddressablesLabeler.DecideLabels(System.String) (path/type folder rules) and
Serenity.Global.Infrastructure.Editor.Utils.SerenityAddressablesAutoLabeler.ResolveLabelsForType(System.Type) (the import-time auto-labeler's type
decision) — a path-only view misses both a composite view under Media/GeneratedViews and a
namespace-fallback ScriptableObject, which only carry a label through the second. Memoizes the result
behind Invalidate() so asking for several systems' member lists in the same wizard pass
costs one scan, not one per system.
Inherited Members
Namespace: Serenity.CreateGame.Infrastructure.Editor.Systems
Assembly: Serenity.UnityCreateGame.Infrastructure.Editor.dll
Syntax
public static class ShippedSystemAssetCatalog
Properties
ScanCountForTests
Declaration
public static int ScanCountForTests { get; }
Property Value
| Type | Description |
|---|---|
| int | Test seam: how many full package scans have actually run since the domain loaded (or since the last Invalidate()). |
Methods
Invalidate()
Forces the next MemberPaths(SerenityInstallableSystem)/RemainingMemberPaths(SerenityInstallableSystem, string) call to rescan the package instead of returning the memoized scan.
Declaration
public static void Invalidate()
MemberPaths(SerenityInstallableSystem)
Every shipped asset that belongs to system.
Declaration
public static IReadOnlyList<string> MemberPaths(SerenityInstallableSystem system)
Parameters
| Type | Name | Description |
|---|---|---|
| SerenityInstallableSystem | system |
Returns
| Type | Description |
|---|---|
| IReadOnlyList<string> |
RemainingMemberPaths(SerenityInstallableSystem, string)
The subset of MemberPaths(SerenityInstallableSystem) that adopting system into
outputRoot has not already mirrored onto disk.
Declaration
public static IReadOnlyList<string> RemainingMemberPaths(SerenityInstallableSystem system, string outputRoot)
Parameters
| Type | Name | Description |
|---|---|---|
| SerenityInstallableSystem | system | |
| string | outputRoot |
Returns
| Type | Description |
|---|---|
| IReadOnlyList<string> |