Files
Mapo-IOB-WIN/IOB-UT-NEXT/FtpActConf.cs
T
2024-10-07 16:32:21 +02:00

111 lines
2.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace IOB_UT_NEXT
{
public class FtpActConf
{
/// <summary>
/// ID azione configurata
/// </summary>
public string ActionId { get; set; } = "000";
/// <summary>
/// IP / DNS name del ServerAddr FTP
/// </summary>
public string ServerAddr { get; set; } = "localhost";
/// <summary>
/// Porta FTP, default 21
/// </summary>
public int ServerPort { get; set; } = 21;
/// <summary>
/// User connessione FTP
/// </summary>
public string ConnUser { get; set; } = "";
/// <summary>
/// PWD connessione FTP
/// </summary>
public string ConnPasswd { get; set; } = "";
/// <summary>
/// Certificato FTP (raw) x accettazione implicita autofirmati
/// </summary>
public string RawCert { get; set; } = "";
/// <summary>
/// Skip del controllo certificato FTP
/// </summary>
public bool SkipCert { get; set; } = true;
/// <summary>
/// Tempo di attesa in SEC standard prima della prossima ri-esecuzione
/// </summary>
public int ReExecVeto { get; set; } = 60;
/// <summary>
/// Note opzionali
/// </summary>
public string Note { get; set; } = "";
/// <summary>
/// Elenco step da eseguire
/// </summary>
public List<ActionConfig> StepsList { get; set; }
}
/// <summary>
/// Configurazione di un singolo step FTP
/// </summary>
public class ActionConfig
{
/// <summary>
/// ID azione (per ordinamento)
/// </summary>
public string Id { get; set; } = "00";
/// <summary>
/// Descrizione step
/// </summary>
public string Description { get; set; } = "00";
/// <summary>
/// Azione richiesta
/// </summary>
public ActType Action { get; set; } = ActType.CheckDir;
/// <summary>
/// Dizionario parametri specifici per azione richiesta (dipendenti da azione...)
/// </summary>
public Dictionary<string, string> ParamList { get; set; } = new Dictionary<string, string>();
}
/// <summary>
/// Enum azioni FTP gestite/da gestire
/// </summary>
public enum ActType
{
CheckDir,
CheckFile,
CreateDir,
DelDir,
DelFile,
DownloadDir,
DownloadFile,
GenRandomDir,
ListContent,
MirrorDirL2R,
MirrorDirR2L,
PingServer,
UploadDir,
UploadFile
}
}