Preparation fo Mystery rolling
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
namespace ALttPRandomizer {
|
||||
using ALttPRandomizer.Azure;
|
||||
using ALttPRandomizer.Serialization;
|
||||
using ALttPRandomizer.Model;
|
||||
using ALttPRandomizer.Options;
|
||||
using ALttPRandomizer.Randomizers;
|
||||
using ALttPRandomizer.Service;
|
||||
@@ -13,7 +15,8 @@
|
||||
using Microsoft.Extensions.Options;
|
||||
using Serilog;
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
using YamlDotNet.Serialization;
|
||||
using YamlDotNet.Serialization.NamingConventions;
|
||||
|
||||
internal class Program
|
||||
{
|
||||
@@ -47,13 +50,30 @@
|
||||
});
|
||||
});
|
||||
|
||||
builder.Services.AddControllers()
|
||||
var yamlDeserializer =
|
||||
new DeserializerBuilder()
|
||||
.WithNamingConvention(UnderscoredNamingConvention.Instance)
|
||||
.WithTypeConverter(new YamlStringEnumConverter())
|
||||
.WithTypeConverter(new RandomizableWeightsYamlConverters())
|
||||
.Build();
|
||||
|
||||
var yamlFormatter =
|
||||
new YamlInputFormatter(
|
||||
yamlDeserializer,
|
||||
provider.GetRequiredService<ILogger<YamlInputFormatter>>());
|
||||
|
||||
builder.Services
|
||||
.AddControllers(options => {
|
||||
options.InputFormatters.Add(yamlFormatter);
|
||||
})
|
||||
.AddJsonOptions(x => {
|
||||
x.JsonSerializerOptions.PropertyNameCaseInsensitive = true;
|
||||
x.JsonSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower;
|
||||
x.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter(JsonNamingPolicy.SnakeCaseLower, false));
|
||||
x.JsonSerializerOptions.WithStringEnum();
|
||||
});
|
||||
builder.Services.AddSwaggerGen();
|
||||
builder.Services.AddSwaggerGen(options => {
|
||||
options.OperationFilter<DefaultMysterySettingsFilter>();
|
||||
});
|
||||
|
||||
var options = new DefaultAzureCredentialOptions();
|
||||
|
||||
@@ -72,6 +92,7 @@
|
||||
builder.Services.AddSingleton<ShutdownHandler>();
|
||||
|
||||
builder.Services.AddScoped<BaseRandomizer>();
|
||||
builder.Services.AddScoped<MysteryRandomizer>();
|
||||
builder.Services.AddScoped<RandomizeService>();
|
||||
builder.Services.AddScoped<SeedService>();
|
||||
builder.Services.AddScoped<IdGenerator>();
|
||||
|
||||
Reference in New Issue
Block a user