qstbak/Questionable/Questionable.Controller/FateDefinitionRegistry.cs
2026-08-17 20:29:32 +10:00

41 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using Dalamud.Plugin;
using Microsoft.Extensions.Logging;
using Questionable.FatePaths;
using Questionable.Model.Questing;
using Questionable.Validation;
using Questionable.Validation.Validators;
namespace Questionable.Controller;
internal sealed class FateDefinitionRegistry : DefinitionRegistry<FateDefinition>
{
protected override string TypeLabel => "FATE";
protected override string ConfigDirectoryName => "FateDefinitions";
protected override string ProjectDirectoryName => "FatePaths";
protected override EPathType PathType => EPathType.Fate;
public FateDefinitionRegistry(IDalamudPluginInterface pluginInterface, FateSchemaValidator fateSchemaValidator, QuestValidator questValidator, ILogger<FateDefinitionRegistry> logger)
: base(pluginInterface, (IDefinitionSchemaValidator)fateSchemaValidator, questValidator, (ILogger)logger)
{
}
protected override IReadOnlyDictionary<ushort, FateDefinition> GetAssemblyDefinitions()
{
return AssemblyFateDefinitionLoader.GetDefinitions();
}
protected override DateTime? GetExpiry(FateDefinition definition)
{
return definition.EventExpiry;
}
protected override string? GetName(FateDefinition definition)
{
return definition.Name;
}
}