AssetManifest class

Namespace Runic.Assets · Runic.Assets 0.7.0-preview.5

public sealed class AssetManifest

Provides an immutable, deterministically ordered asset catalog.

Constructors

AssetManifest

public AssetManifest(IEnumerable<AssetDescriptor> assets)

Creates a validated immutable manifest.

Fields

CurrentVersion

public const string CurrentVersion = "runic.assets/1"

The current package-neutral manifest schema identifier.

Properties

Assets

public IReadOnlyList<AssetDescriptor> Assets { get; }

Gets assets in ordinal path order.

EntryPoint

public AssetDescriptor EntryPoint { get; }

Gets the sole entry point.

Version

public string Version { get; }

Gets the manifest schema identifier.

Methods

TryGetAsset

public bool TryGetAsset(string relativePath, out AssetDescriptor? asset)

Finds one exact, case-sensitive path. Returns false when the path is not declared or is not a valid asset path (see AssetPath.TryNormalize).

TryResolveRequestPath

public bool TryResolveRequestPath(string? requestPath, AssetRoutingOptions? options, out AssetDescriptor? asset)

Resolves a host request path, relative to where the asset source is mounted, using the routing rules shared by every Runic Assets host adapter. An empty path or / resolves to the entry point when AssetRoutingOptions.ServeEntryPointAtRoot is set. Other paths may start with one / and resolve to an exact manifest path. A missing path whose last segment has no file extension resolves to the entry point when AssetRoutingOptions.EnableSinglePageApplicationFallback is set. Invalid and unmatched paths return false.