Merge branch 'develop' into SDK
This commit is contained in:
+111
-56
@@ -35,62 +35,6 @@ namespace EgwProxy.LiMan
|
||||
|
||||
#region Public Methods
|
||||
|
||||
/// <summary>
|
||||
/// Elenco Release applicazione
|
||||
/// </summary>
|
||||
/// <param name="CodApp">CodApp richiesta</param>
|
||||
/// <returns></returns>
|
||||
public List<ReleaseDTO> ReleaseGetAll(string CodApp)
|
||||
{
|
||||
List<ReleaseDTO> answ = new List<ReleaseDTO>();
|
||||
using (RestClient client = new RestClient(rcOptions))
|
||||
{
|
||||
string CodAppEnc = HttpUtility.UrlEncode(CodApp);
|
||||
var request = new RestRequest($"Release/{CodAppEnc}", Method.Get);
|
||||
var response = client.Get(request);
|
||||
// controllo risposta
|
||||
if (response.StatusCode == HttpStatusCode.OK)
|
||||
{
|
||||
// contenuto serializzato
|
||||
string rawData = $"{response.Content}";
|
||||
answ = JsonConvert.DeserializeObject<List<ReleaseDTO>>(rawData);
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
/// <summary>
|
||||
/// Effettua chiamata test sul server (ping), se fallisse riprova fino a maxTry volte
|
||||
/// </summary>
|
||||
/// <param name="maxTry">num tentativi in caso di KO</param>
|
||||
/// <param name="waitTime">tempo di attesa medio tra tentativi in ms</param>
|
||||
/// <returns></returns>
|
||||
public bool CheckRemote(int maxTry = 5, int waitTime = 200)
|
||||
{
|
||||
bool res = false;
|
||||
int numTry = 0;
|
||||
IPAddress address = IPAddress.Loopback;
|
||||
string srvName = servAddr;
|
||||
// tolgo eventuale nome con ":"
|
||||
if (servAddr.Contains(":"))
|
||||
{
|
||||
srvName = servAddr.Substring(0, servAddr.IndexOf(":"));
|
||||
}
|
||||
// tolgo eventuale nome con "/"
|
||||
if (servAddr.Contains("/"))
|
||||
{
|
||||
srvName = servAddr.Substring(0, servAddr.IndexOf("/"));
|
||||
}
|
||||
while (!res && numTry < maxTry)
|
||||
{
|
||||
res = pingAddress(srvName, callTimeout) == IPStatus.Success;
|
||||
numTry++;
|
||||
if (!res)
|
||||
{
|
||||
Thread.Sleep(waitTime);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
/// <summary>
|
||||
/// Test ping x indirizzo indicato
|
||||
/// </summary>
|
||||
@@ -165,6 +109,64 @@ namespace EgwProxy.LiMan
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Effettua chiamata test sul server (ping), se fallisse riprova fino a maxTry volte
|
||||
/// </summary>
|
||||
/// <param name="maxTry">num tentativi in caso di KO</param>
|
||||
/// <param name="waitTime">tempo di attesa medio tra tentativi in ms</param>
|
||||
/// <returns></returns>
|
||||
public bool CheckRemote(int maxTry = 5, int waitTime = 200)
|
||||
{
|
||||
bool res = false;
|
||||
int numTry = 0;
|
||||
IPAddress address = IPAddress.Loopback;
|
||||
string srvName = servAddr;
|
||||
// tolgo eventuale nome con ":"
|
||||
if (servAddr.Contains(":"))
|
||||
{
|
||||
srvName = servAddr.Substring(0, servAddr.IndexOf(":"));
|
||||
}
|
||||
// tolgo eventuale nome con "/"
|
||||
if (servAddr.Contains("/"))
|
||||
{
|
||||
srvName = servAddr.Substring(0, servAddr.IndexOf("/"));
|
||||
}
|
||||
while (!res && numTry < maxTry)
|
||||
{
|
||||
res = pingAddress(srvName, callTimeout) == IPStatus.Success;
|
||||
numTry++;
|
||||
if (!res)
|
||||
{
|
||||
Thread.Sleep(waitTime);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco Release applicazione
|
||||
/// </summary>
|
||||
/// <param name="CodApp">CodApp richiesta</param>
|
||||
/// <returns></returns>
|
||||
public List<ReleaseDTO> ReleaseGetAll(string CodApp)
|
||||
{
|
||||
List<ReleaseDTO> answ = new List<ReleaseDTO>();
|
||||
using (RestClient client = new RestClient(rcOptions))
|
||||
{
|
||||
string CodAppEnc = HttpUtility.UrlEncode(CodApp);
|
||||
var request = new RestRequest($"Release/{CodAppEnc}", Method.Get);
|
||||
var response = client.Get(request);
|
||||
// controllo risposta
|
||||
if (response.StatusCode == HttpStatusCode.OK)
|
||||
{
|
||||
// contenuto serializzato
|
||||
string rawData = $"{response.Content}";
|
||||
answ = JsonConvert.DeserializeObject<List<ReleaseDTO>>(rawData);
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Versione Async Elenco Release applicazione
|
||||
/// </summary>
|
||||
@@ -241,6 +243,59 @@ namespace EgwProxy.LiMan
|
||||
return await Task.FromResult(answ);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco Release applicazione
|
||||
/// </summary>
|
||||
/// <param name="CodApp">CodApp richiesta</param>
|
||||
/// <param name="VersMin">Versione minima richiesta</param>
|
||||
/// <param name="VersMax">Versione massima consentita</param>
|
||||
/// <returns></returns>
|
||||
public List<ReleaseDTO> ReleaseGetFiltLimit(string CodApp, string VersMin, string VersMax)
|
||||
{
|
||||
List<ReleaseDTO> answ = new List<ReleaseDTO>();
|
||||
using (RestClient client = new RestClient(rcOptions))
|
||||
{
|
||||
string CodAppEnc = HttpUtility.UrlEncode(CodApp);
|
||||
var request = new RestRequest($"Release/filtLimit/{CodAppEnc}?VersMin={VersMin}&VersMax={VersMax}", Method.Get);
|
||||
var response = client.Get(request);
|
||||
// controllo risposta
|
||||
if (response.StatusCode == HttpStatusCode.OK)
|
||||
{
|
||||
// contenuto serializzato
|
||||
string rawData = $"{response.Content}";
|
||||
answ = JsonConvert.DeserializeObject<List<ReleaseDTO>>(rawData);
|
||||
}
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Versione Async Elenco Release applicazione
|
||||
/// </summary>
|
||||
/// <param name="CodApp">CodApp richiesta</param>
|
||||
/// <param name="VersMin">Versione minima richiesta</param>
|
||||
/// <param name="VersMax">Versione massima consentita</param>
|
||||
/// <returns></returns>
|
||||
public async Task<List<ReleaseDTO>> ReleaseGetFiltLimitAsync(string CodApp, string VersMin, string VersMax)
|
||||
{
|
||||
List<ReleaseDTO> answ = new List<ReleaseDTO>();
|
||||
|
||||
using (RestClient client = new RestClient(rcOptions))
|
||||
{
|
||||
string CodAppEnc = HttpUtility.UrlEncode(CodApp);
|
||||
var request = new RestRequest($"Release/filtLimit/{CodAppEnc}?VersMin={VersMin}&VersMax={VersMax}", Method.Get);
|
||||
var response = await client.GetAsync(request);
|
||||
// controllo risposta
|
||||
if (response.StatusCode == HttpStatusCode.OK)
|
||||
{
|
||||
// contenuto serializzato
|
||||
string rawData = $"{response.Content}";
|
||||
answ = JsonConvert.DeserializeObject<List<ReleaseDTO>>(rawData);
|
||||
}
|
||||
}
|
||||
return await Task.FromResult(answ);
|
||||
}
|
||||
|
||||
#endregion Public Methods
|
||||
|
||||
#region Private Fields
|
||||
|
||||
Reference in New Issue
Block a user