45 lines
1.4 KiB
C#
Raw Normal View History

using System.Threading.Tasks;
using MalwareMultiScan.Api.Data.Models;
2020-10-29 12:17:09 +02:00
using MalwareMultiScan.Api.Services.Interfaces;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace MalwareMultiScan.Api.Controllers
{
2020-10-29 16:09:56 +02:00
/// <summary>
/// Scan results controller.
/// </summary>
[ApiController]
2020-10-27 09:57:39 +02:00
[Route("api/results")]
[Produces("application/json")]
public class ScanResultsController : Controller
{
2020-10-29 12:17:09 +02:00
private readonly IScanResultService _scanResultService;
2020-10-29 16:09:56 +02:00
/// <summary>
/// Initialize scan results controller.
/// </summary>
/// <param name="scanResultService">Scan result service.</param>
2020-10-29 12:17:09 +02:00
public ScanResultsController(IScanResultService scanResultService)
{
_scanResultService = scanResultService;
}
2020-10-26 17:06:29 +02:00
2020-10-29 16:09:56 +02:00
/// <summary>
/// Get scan result by id.
/// </summary>
/// <param name="id">Scan result id.</param>
[HttpGet("{id}")]
[ProducesResponseType(typeof(ScanResult), StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
public async Task<IActionResult> Index(string id)
{
var scanResult = await _scanResultService.GetScanResult(id);
if (scanResult == null)
return NotFound();
return Ok(scanResult);
}
}
}