Ancora update gestione envir da completare
This commit is contained in:
@@ -97,13 +97,17 @@ namespace Lux.API.Controllers
|
||||
/// Chiamata GET:
|
||||
/// - fornisce il primo job da eseguire dalla coda (SE presente)
|
||||
/// - viene registrato come "in corso" e spostato dalla coda richiesta
|
||||
/// GET: api/Prod/getnext
|
||||
/// GET: api/Prod/getnext/WINDOW
|
||||
/// GET: api/Prod/getnext/BEAM
|
||||
/// </summary>
|
||||
/// <param name="envir">Environment della richiesta</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("getnext")]
|
||||
public async Task<ActionResult<QuestionDTO>> GetNext()
|
||||
[HttpGet("getnext/{envir}")]
|
||||
public async Task<ActionResult<QuestionDTO>> GetNext(string envir)
|
||||
{
|
||||
var result = await PService.GetNext();
|
||||
Constants.EXECENVIRONMENTS cEnvir = Constants.EXECENVIRONMENTS.WINDOW;
|
||||
Enum.TryParse(envir, out cEnvir);
|
||||
var result = await PService.GetNext(cEnvir);
|
||||
QuestionDTO? deserRes = JsonConvert.DeserializeObject<QuestionDTO>(result);
|
||||
if (deserRes != null)
|
||||
{
|
||||
@@ -116,7 +120,9 @@ namespace Lux.API.Controllers
|
||||
deserRes.Args.Remove("RUID");
|
||||
}
|
||||
// lo aggiungo!
|
||||
string envir = $"{deserRes.ExecEnvironment}";
|
||||
#if false
|
||||
string envir = $"{deserRes.ExecEnvironment}";
|
||||
#endif
|
||||
var mode = deserRes.Args["Mode"];
|
||||
var sub = deserRes.Args["SubMode"];
|
||||
var uid = deserRes.Args["UID"];
|
||||
@@ -138,7 +144,6 @@ namespace Lux.API.Controllers
|
||||
/// <summary>
|
||||
/// Ritorno calcolo
|
||||
/// </summary>
|
||||
/// <param name="id">Chiave auth valida (da implementare)</param>
|
||||
/// <param name="retData"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("jobreturn")]
|
||||
@@ -189,16 +194,22 @@ namespace Lux.API.Controllers
|
||||
|
||||
/// <summary>
|
||||
/// Chiamata GET: num richieste in coda (se non specificato è waiting, altrimenti )
|
||||
/// GET: api/Prod/queue-len/
|
||||
/// GET: api/Prod/queue-len/waiting
|
||||
/// GET: api/Prod/queue-len/running
|
||||
/// GET: api/Prod/queue-len/WINDOW/
|
||||
/// GET: api/Prod/queue-len/WINDOW/waiting
|
||||
/// GET: api/Prod/queue-len/WINDOW/running
|
||||
/// GET: api/Prod/queue-len/BEAM/
|
||||
/// GET: api/Prod/queue-len/BEAM/waiting
|
||||
/// GET: api/Prod/queue-len/BEAM/running
|
||||
/// </summary>
|
||||
/// <param name="id">uid oggetto</param>
|
||||
/// <param name="envir">Environment della richiesta</param>
|
||||
/// <param name="type">Tipo coda (default waiting)</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("qlen/{type}")]
|
||||
public async Task<IActionResult> QueueLen(QueueType type = QueueType.waiting)
|
||||
[HttpGet("qlen/{envir}/{type}")]
|
||||
public async Task<IActionResult> QueueLen(string envir, QueueType type = QueueType.waiting)
|
||||
{
|
||||
var result = await PService.QueueLen(type);
|
||||
Constants.EXECENVIRONMENTS cEnvir = Constants.EXECENVIRONMENTS.WINDOW;
|
||||
Enum.TryParse(envir, out cEnvir);
|
||||
var result = await PService.QueueLen(cEnvir, type);
|
||||
return Ok(result);
|
||||
}
|
||||
|
||||
@@ -206,16 +217,18 @@ namespace Lux.API.Controllers
|
||||
/// Chiamata GET: dizionario stato richieste
|
||||
/// GET: api/Prod/queue-status/
|
||||
/// </summary>
|
||||
/// <param name="id">uid oggetto</param>
|
||||
/// <param name="envir">Environment della richiesta</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("qstatus")]
|
||||
public async Task<IActionResult> QueueStatus()
|
||||
public async Task<IActionResult> QueueStatus(string envir)
|
||||
{
|
||||
Stopwatch sw = new Stopwatch();
|
||||
sw.Start();
|
||||
Constants.EXECENVIRONMENTS cEnvir = Constants.EXECENVIRONMENTS.WINDOW;
|
||||
Enum.TryParse(envir, out cEnvir);
|
||||
Dictionary<string, long> queueStatus = new Dictionary<string, long>();
|
||||
long numWait = await PService.QueueLen(QueueType.waiting);
|
||||
long numRun = await PService.QueueLen(QueueType.running);
|
||||
long numWait = await PService.QueueLen(cEnvir, QueueType.waiting);
|
||||
long numRun = await PService.QueueLen(cEnvir, QueueType.running);
|
||||
// simulo status...
|
||||
queueStatus.Add("waiting", numWait);
|
||||
queueStatus.Add("running", numRun);
|
||||
|
||||
Reference in New Issue
Block a user