2022-04-17 16:22:40 +01:00
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
|
using isnd.Services;
|
2023-03-18 12:50:31 +00:00
|
|
|
using isnd.Interfaces;
|
|
|
|
|
using Unleash;
|
|
|
|
|
using System.Linq;
|
2026-07-05 17:22:57 +01:00
|
|
|
using isnd.Entities;
|
|
|
|
|
using Isn.Abstract;
|
2023-03-18 12:50:31 +00:00
|
|
|
|
2022-04-17 16:22:40 +01:00
|
|
|
|
|
|
|
|
namespace isnd.Controllers
|
|
|
|
|
{
|
2023-01-29 13:04:50 +00:00
|
|
|
/// <summary>
|
2023-03-18 12:50:31 +00:00
|
|
|
/// Api Controller
|
2023-01-29 13:04:50 +00:00
|
|
|
/// </summary>
|
2023-03-18 12:50:31 +00:00
|
|
|
public class ApiController : Controller
|
2022-04-17 16:22:40 +01:00
|
|
|
{
|
2023-03-18 12:50:31 +00:00
|
|
|
private readonly IPackageManager packageManager;
|
|
|
|
|
private readonly Resource[] resources;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Api Controller Constructor
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="pm"></param>
|
|
|
|
|
/// <param name="unleashĈlient"></param>
|
|
|
|
|
public ApiController(IPackageManager pm, IUnleash unleashĈlient)
|
|
|
|
|
{
|
|
|
|
|
packageManager = pm;
|
|
|
|
|
resources = packageManager.GetResources(unleashĈlient).ToArray();
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-29 13:04:50 +00:00
|
|
|
/// <summary>
|
|
|
|
|
/// API index
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
2023-03-18 12:50:31 +00:00
|
|
|
[HttpGet(Constants.PackageRootServerPrefix + ApiConfig.IndexDotJson)]
|
2022-04-17 16:22:40 +01:00
|
|
|
public IActionResult ApiIndex()
|
|
|
|
|
{
|
2023-03-14 00:15:42 +00:00
|
|
|
return Ok(new ApiIndexViewModel(packageManager.CatalogBaseUrl + ApiConfig.IndexDotJson){ Version = PackageManager.BASE_API_LEVEL, Resources = resources });
|
2022-04-17 16:22:40 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|