97 lines
1.9 KiB
C#
97 lines
1.9 KiB
C#
using System;
|
|
|
|
namespace IOB_MAN
|
|
{
|
|
public class iobAdapt
|
|
{
|
|
protected DateTime lastSeen { get; set; } = DateTime.Now;
|
|
/// <summary>
|
|
/// Codice univoco macchina
|
|
/// </summary>
|
|
public string CodIOB { get; set; }
|
|
/// <summary>
|
|
/// Identificativo univoco processo
|
|
/// </summary>
|
|
public int pID { get; set; }
|
|
/// <summary>
|
|
/// DataOra avvio dell'IOB
|
|
/// </summary>
|
|
public DateTime startTime { get; set; } = DateTime.Now;
|
|
/// <summary>
|
|
/// Calcola uptime processo...
|
|
/// </summary>
|
|
public string uptime
|
|
{
|
|
get
|
|
{
|
|
// in primis cerco SE sia running --> aggiorno lastSeen
|
|
if (isRunning)
|
|
{
|
|
lastSeen = DateTime.Now;
|
|
}
|
|
TimeSpan uptime = lastSeen.Subtract(startTime);
|
|
return utils.FormatTimeSpan(uptime);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// Verifica se il processo sia in RUN
|
|
/// </summary>
|
|
public bool isRunning { get; set; }
|
|
/// <summary>
|
|
/// Gestore processi redis
|
|
/// </summary>
|
|
public RedisIobCache redisMan;
|
|
/// <summary>
|
|
/// Stato online dell'IOB
|
|
/// </summary>
|
|
public bool iobOnline
|
|
{
|
|
get
|
|
{
|
|
return redisMan.iobStatus.online;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// Counter dell'IOB
|
|
/// </summary>
|
|
public int iobCounter
|
|
{
|
|
get
|
|
{
|
|
return (int)redisMan.iobStatus.counterIOB;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// Counter del CNC
|
|
/// </summary>
|
|
public int cncCounter
|
|
{
|
|
get
|
|
{
|
|
return (int)redisMan.iobStatus.counterMAC;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// lunghezza coda EVENTI
|
|
/// </summary>
|
|
public int queueElLen
|
|
{
|
|
get
|
|
{
|
|
return redisMan.iobStatus.queueEvLen;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// lunghezza coda FLog
|
|
/// </summary>
|
|
public int queueFlLen
|
|
{
|
|
get
|
|
{
|
|
return redisMan.iobStatus.queueFlLen;
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|