diff --git a/MConnectSDK/MConnectClient.cs b/MConnectSDK/MConnectClient.cs index abcaa1b..9c837eb 100644 --- a/MConnectSDK/MConnectClient.cs +++ b/MConnectSDK/MConnectClient.cs @@ -77,14 +77,14 @@ namespace MConnectSDK /// /// Stato della richiesta attuale tornato /// - protected requestStatus reqStatus + protected Result reqStatus { get { - requestStatus answ = new requestStatus(); + Result answ = new Result(); try { - answ = JsonConvert.DeserializeObject(ML.getRSV(ML.redHash("RequestStatus"))); + answ = JsonConvert.DeserializeObject(ML.getRSV(ML.redHash("RequestStatus"))); } catch { } @@ -327,15 +327,15 @@ namespace MConnectSDK /// Effettua test preliminare stato... /// /// - private requestStatus preCheckStatus() + private Result preCheckStatus() { - requestStatus answ = new requestStatus() + Result answ = new Result() { // init in stato ND... isHmiEnrolled = false, cloudConnection = false, localConnection = false, - source = comSource.offline, + source = Result.Source.offline, callSuccess = false }; // verifico REDIS in primis @@ -345,7 +345,7 @@ namespace MConnectSDK // cerco i TOKEN in REDIS... answ.isAuth = !string.IsNullOrEmpty(refresh_token); answ.isHmiEnrolled = enrollDate < DateTime.Now; - answ.source = comSource.local; + answ.source = Result.Source.local; } // verifico chiamata server... @@ -353,7 +353,7 @@ namespace MConnectSDK { // Fingo che tutto vada bene e di conseguenza setto risposta... answ.cloudConnection = true; - answ.source = comSource.cloud; + answ.source = Result.Source.cloud; answ.callSuccess = true; // attesa random... Random r = new Random(); @@ -487,7 +487,7 @@ namespace MConnectSDK /// Metodo di INIT della classe di comunicazione /// /// - public requestStatus init() + public Result init() { // svuoto TUTTI i dati x INIT... //ML.redFlushDB(_currParam.defaultDb); @@ -589,7 +589,7 @@ namespace MConnectSDK /// Metodo x ottenere update richiesta /// /// - public requestStatus reqStatusUpd + public Result reqStatusUpd { get { diff --git a/MConnectSDK/Utils.cs b/MConnectSDK/Utils.cs index 262742d..9d511cb 100644 --- a/MConnectSDK/Utils.cs +++ b/MConnectSDK/Utils.cs @@ -31,37 +31,6 @@ public string module = "MCC"; } - /// - /// Oggetto indicante lo Stato della richiesta - /// - public class requestStatus - { - /// - /// indica se l'applicazione abbia token di auth validi - /// - public bool isAuth = false; - /// - /// indica se l'HMI risulti già registrato (ENROLLED) su piattaforma - /// - public bool isHmiEnrolled = false; - /// - /// Indica lo stato di disponibilità del CLOUD (= connesso) - /// - public bool cloudConnection = false; - /// - /// Indica la disponibilità dello storage LOCALE (= connesso) - /// - public bool localConnection = false; - /// - /// Sorgente da cui deriva l'esito dell'operazione - /// - public comSource source; - /// - /// Indica se la chiamata sia andata a buon fine (success) oppure ci siano stati errori/problemi - /// - public bool callSuccess = false; - - } /// /// Classe della rispsota del token in fase di OAuth @@ -120,54 +89,7 @@ /// public string organizationCode; } - /// - /// Classe che contiene i dati x user auth da mostrare da HMI - /// - public class userAuthData - { - /// - /// Codice device - /// - public string deviceCode = ""; - /// - /// Codice di auth da mostrare a video - /// - public string userCode = ""; - /// - /// QR-Code completo - /// - public string qrCode = ""; - /// - /// Indica se sia stato autorizzato (con i relativi token) - /// - public bool hasAuth = false; - /// - /// Indica se il dispositivo sia stato arruolato - /// - public bool isEnrolled = false; - /// - /// Messaggio da mostrare - /// - public string outMessage = ""; - } - /// - /// Enum delle sorgenti di comunicazione - /// - public enum comSource - { - /// - /// Piattaforma Cloud MaestroConnect - /// - cloud = 0, - /// - /// Storage cache locale - /// - local, - /// - /// Offline - /// - offline - } + /// /// Classe info UTENTE /// @@ -224,4 +146,136 @@ /// public string passwordCyph = ""; } + + + + /// + /// Oggetto restituisco con ogni chiamata + /// + public class Result + { + /// + /// Enum delle sorgenti di comunicazione + /// + public enum Source + { + /// + /// Piattaforma Cloud MaestroConnect + /// + cloud = 0, + /// + /// Storage cache locale + /// + local, + /// + /// Offline + /// + offline + } + + /// + /// Enum per status + /// + public enum Status + { + KO = 0, + OK = 1 + } + + /// + /// Classe errore chiamata + /// + public class Error + { + /// + /// Enum per causali errori + /// + public enum Reason + { + NotFound = 0, + PwdMismatch + } + /// + /// Classe causale errore + /// + public Reason reason; + /// + /// Messaggio di dettaglio errore + /// + public string message; + } + + /// + /// indica se l'applicazione abbia token di auth validi + /// + public bool isAuth = false; + /// + /// indica se l'HMI risulti già registrato (ENROLLED) su piattaforma + /// + public bool isHmiEnrolled = false; + /// + /// Indica lo stato di disponibilità del CLOUD (= connesso) + /// + public bool cloudConnection = false; + /// + /// Indica la disponibilità dello storage LOCALE (= connesso) + /// + public bool localConnection = false; + /// + /// Sorgente da cui deriva l'esito dell'operazione + /// + public Source source; + /// + /// Indica se la chiamata sia andata a buon fine (success) oppure ci siano stati errori/problemi + /// + public bool callSuccess = false; + /// + /// Payload associato alla chiamata + /// + public PayLoad payLoad; + /// + /// Property class associata ad eventuale errore riscontrato + /// + public Error error; + } + + /// + /// Classe base per ritnro dati chiamate + /// + public class PayLoad + { + + } + + /// + /// Classe che contiene PayLoad x fare auth iniziale, + /// contentente i dati x user auth da mostrare con HMI + /// + public class userAuthData : PayLoad + { + /// + /// Codice device + /// + public string deviceCode = ""; + /// + /// Codice di auth da mostrare a video + /// + public string userCode = ""; + /// + /// QR-Code completo + /// + public string qrCode = ""; + /// + /// Indica se sia stato autorizzato (con i relativi token) + /// + public bool hasAuth = false; + /// + /// Indica se il dispositivo sia stato arruolato + /// + public bool isEnrolled = false; + /// + /// Messaggio da mostrare + /// + public string outMessage = ""; + } } diff --git a/TestClient/MainForm.cs b/TestClient/MainForm.cs index 1bbbcc1..7248944 100644 --- a/TestClient/MainForm.cs +++ b/TestClient/MainForm.cs @@ -30,7 +30,7 @@ namespace TestClient /// /// Risposta BASE della classe di comunicazione /// - protected requestStatus reqStatus; + protected Result reqStatus; /// /// Form principale ///