ca44fc8794
Adds ReleaseRepository/ReleaseManager (IReleaseService) for paged medium-filtered release reads and Session/Mix satellite writes, UnifiedReleaseService orchestrating vault+SQL, and ReleaseController (5 endpoints). Refactors WaveformProfileService for configurable bucketCount/vaultName (backward-compatible) and adds the mix-waveforms vault. Promotes brittle error-string literals to named constants (MixHasNoTrackMessage, MixTrackNoAudioMessage) on UnifiedReleaseService.
29 lines
967 B
C#
29 lines
967 B
C#
namespace DeepDrftContent.Constants;
|
|
|
|
/// <summary>
|
|
/// Constants for FileDatabase vault names
|
|
/// </summary>
|
|
public static class VaultConstants
|
|
{
|
|
/// <summary>
|
|
/// Vault name for storing audio tracks
|
|
/// </summary>
|
|
public const string Tracks = "tracks";
|
|
|
|
/// <summary>
|
|
/// Vault name for storing waveform loudness profile sidecars, keyed by track EntryKey.
|
|
/// </summary>
|
|
public const string WaveformProfiles = "waveform-profiles";
|
|
|
|
/// <summary>
|
|
/// Vault name for storing cover-art images, keyed by a generated entry key referenced
|
|
/// from <c>TrackEntity.ImagePath</c>.
|
|
/// </summary>
|
|
public const string Images = "images";
|
|
|
|
/// <summary>
|
|
/// Vault name for Mix high-resolution waveform datums, keyed by the mix track's EntryKey.
|
|
/// Distinct from WaveformProfiles (player-bar low-res); same pipeline at higher resolution.
|
|
/// </summary>
|
|
public const string MixWaveforms = "mix-waveforms";
|
|
} |