using NLog; using System; using System.Collections.Generic; using System.Configuration; using System.Linq; using System.Net; using System.Threading; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace DataUploader { public partial class ResyncLastDocs : System.Web.UI.Page { private static Logger logger = LogManager.GetCurrentClassLogger(); protected void Page_Load(object sender, EventArgs e) { logger.Info(">>>------ Inizio ResyncLastDoc ------<<<"); DateTime tick = DateTime.Now; int numDocCaricati = 0; using (var client = new WebClient()) { client.Proxy = null; ServicePointManager.DefaultConnectionLimit = int.MaxValue; // verifico se vado in modalità demo o meno... bool demoMode = false; int Num2Reload = 0; try { Num2Reload = Convert.ToInt32(Request.QueryString["Num2Reload"]); } catch { } if (Num2Reload == 0) { Num2Reload = Convert.ToInt32(ConfigurationManager.AppSettings["numDocDaRicaricare"]); } try { demoMode = Convert.ToBoolean(Request.QueryString["DemoMode"]); } catch { } // recupero ultimo numero doc caricato... int lastNum = 0; // provo a leggerlo da richiesta... if (Request.QueryString["lastNum"] != "") { try { lastNum = Convert.ToInt32(Request.QueryString["lastNum"]); logger.Info("Imposto last num: {0}", lastNum); } catch { } } // se nON HO lastNum lo richiedo in remoto if (lastNum == 0) { try { var content = client.DownloadString(ConfigurationManager.AppSettings["remoteDocUrl"]); // http://webscr.steamware.net/Rigamonti/Upload/Document lastNum = Convert.ToInt32(content); // converto a int! logger.Info("Recuperato last num: {0}", lastNum); } catch { } } // recupero i dati da caricare... string[] urlsUpdate = GestData.proc.reloadLastDocs(lastNum, Num2Reload); if (demoMode) { lblOut.Text = string.Format("DEMO MODE!
ultimo NUMERO: {0}", lastNum); for (int i = 0; i < urlsUpdate.Length; i++) { lblOut.Text += string.Format("
{0:000}) {1}", i + 1, urlsUpdate[i]); } logger.Info("Effettuato DEMO upload FULL SYNC: durata {0} msec", DateTime.Now.Subtract(tick).TotalMilliseconds); } else { if (ConfigurationManager.AppSettings["debugMode"] == "true") { logger.Info("Inizio chiamate URL"); } lblOut.Text = string.Format("Normal MODE!
{0}", lastNum); string content = ""; for (int i = 0; i < urlsUpdate.Length; i++) { try { if (ConfigurationManager.AppSettings["logFull"] == "true") { logger.Info("Chiamata [{0}]", i); } // se ho qualcosa da scaricare... if (urlsUpdate[i] != "") { // versione SYNC content = client.DownloadString(urlsUpdate[i]); numDocCaricati++; } if (ConfigurationManager.AppSettings["logFull"] == "true") { logger.Info("Risposta [{0}] - {1}", content, urlsUpdate[i]); } } catch { } } try { logger.Info(">>>------ Effettuato upload RESYNC: durata {0} msec, {1} chiamate! ------<<<", DateTime.Now.Subtract(tick).TotalMilliseconds, numDocCaricati); } catch { logger.Info(">>>------ Effettuato upload RESYNC: durata {0} sec, {1} chiamate! ------<<<", DateTime.Now.Subtract(tick).Seconds, numDocCaricati); } } } } } }