24 lines
716 B
C#
24 lines
716 B
C#
using System;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using StellaOps.Concelier.Storage.Mongo.Advisories;
|
|
using StellaOps.Plugin;
|
|
|
|
namespace StellaOps.Concelier.Exporter.Json;
|
|
|
|
public sealed class JsonExporterPlugin : IExporterPlugin
|
|
{
|
|
public string Name => JsonFeedExporter.ExporterName;
|
|
|
|
public bool IsAvailable(IServiceProvider services)
|
|
{
|
|
ArgumentNullException.ThrowIfNull(services);
|
|
return services.GetService<IAdvisoryStore>() is not null;
|
|
}
|
|
|
|
public IFeedExporter Create(IServiceProvider services)
|
|
{
|
|
ArgumentNullException.ThrowIfNull(services);
|
|
return ActivatorUtilities.CreateInstance<JsonFeedExporter>(services);
|
|
}
|
|
}
|