public void controlFailurePdf(string pathFailureWF) { //è vuota, non processare if (String.IsNullOrEmpty(pathFailureWF)) { return; } try { //Recupero il path della cartella di failure di conversione e dichiaro le varibili di utilità //string pathFailureFolder = Properties.Settings.Default.AdobeFailureFolder; string pathFailureFolder = pathFailureWF; DocsPa.DocsPaWebService ws = new DocsPa.DocsPaWebService(); string urlBackend = string.Empty; string nameFileXml = string.Empty; string nameFileConvertito = string.Empty; byte[] xmlByte; //Controllo i files per cui è fallita la conversione nella cartella di failure foreach (string genericFile in Directory.GetFiles(pathFailureFolder, "*", SearchOption.AllDirectories)) { nameFileXml = Path.GetFileNameWithoutExtension(genericFile); //Controllo che esiste l'xml a corredo del file per cui è fallita la conversione if (File.Exists(@Configurazione.AdobeQueueFolder + "\\" + nameFileXml)) { //Recupero e leggo le informazioni utili dal file xml a corredo di quello per cui è fallita la conversione XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(@Configurazione.AdobeQueueFolder + "\\" + nameFileXml); if (xmlDoc != null) { XmlNode node = xmlDoc.DocumentElement; nameFileConvertito = node.SelectSingleNode("FILE_NAME").InnerText.ToString(); urlBackend = node.SelectSingleNode("URL_WS").InnerText.ToString(); } //Imposto l'url del backend da chiamare if (urlBackend != "") { ws.Url = urlBackend; } //Recupero il file xml StringWriter sw = new StringWriter(); XmlTextWriter xw = new XmlTextWriter(sw); xmlDoc.WriteTo(xw); xmlByte = System.Text.Encoding.Default.GetBytes(sw.ToString()); //Recupero il nome del file per cui è fallita la conversione nameFileConvertito = Path.GetFileName(genericFile); //docConvertitoByte = File.ReadAllBytes(genericFile); //Chiamo webMethod per inviare il file convertito e il suo xml a corredo if (!string.IsNullOrEmpty(nameFileConvertito) && !string.IsNullOrEmpty(nameFileXml) && xmlByte != null && xmlByte.Length != 0) { try { fileLog(info, " - Chiamo il WS DequeueServerPdfConversion", 5); ws.Timeout = System.Threading.Timeout.Infinite; ws.DequeueServerPdfConversion(nameFileConvertito, nameFileXml, null, xmlByte); } catch (Exception e) { fileLog(errore, " - chiamata WS DocsPa : " + e.Message, 0); } } //Elimino i files File.Delete(genericFile); File.Delete(@Configurazione.AdobeQueueFolder + "\\" + nameFileXml); } } } catch (Exception ex) { fileLog(errore, " - controllo output di conversione : " + ex.Message, 0); } }
public Logica() { ws = new DocsPa.DocsPaWebService(); ws.Timeout = System.Threading.Timeout.Infinite; fileLog(debug, string.Format("Indirizzo webservice {0}", ws.Url), 4); }