public static int Main(string[] args) { DateTime st = DateTime.UtcNow; Console.WriteLine("Transformation Tool"); UserSetupManagement userSetup = UserSetupManagement.Instance; MetadataDocumentManagement metadataDocMgt = MetadataDocumentManagement.Instance; if (!GetUserInput(args)) { TransformationLog.CloseXmlFile(); return(1); } if (!LoadFiles(metadataDocMgt, userSetup)) { TransformationLog.CloseXmlFile(); return(1); } ReportConverter reportConvertor = new ReportConverter(metadataDocMgt.XmlDocument); metadataDocMgt.XmlDocument = reportConvertor.ReturnSourceForms(); TransformationLog.TransformationStarted(); IgnoreForms.RemoveIgnoredForms(); IgnoreForms.RemoveFormsWithMatrixControls(); IgnoreForms.RemoveReplacedForms(); try { NestingXmlDocument nestingXml = new NestingXmlDocument(); nestingXml.SuppressErrors = true; nestingXml.StartTransformation(); if (NestingXmlDocument.ErrorInTransformation) { TransformationLog.GenericLogEntry("Transformation tool can't transform this file. Check Transformation log file.", LogCategory.Error); } } catch (Exception e) { WriteAbortTransformation(e); TransformationLog.CloseXmlFile(); return(1); } MovePageElements.Start(); RenumberPages.Start(); if (!XmlUtility.SaveXmlToFile(reportConvertor.GetDestinationPages(metadataDocMgt.XmlDocument), userSetup.PagesFile)) { TransformationLog.CloseXmlFile(); return(1); } Console.WriteLine("The Transformation is completed."); TransformationLog.TransformationFinished(System.DateTime.UtcNow.Subtract(st).TotalSeconds); TransformationLog.CloseXmlFile(); return(0); }
private static bool LoadFiles(MetadataDocumentManagement metaDataDocMgt, UserSetupManagement userSetup) { bool errorExists = false; errorExists = !userSetup.CheckIfAllSchemaFilesExists(); try { metaDataDocMgt.XmlDocument = XmlUtility.LoadFromFileToXml(userSetup.FormsFile); System.IO.File.Delete(userSetup.PagesFile); } catch (Exception e) { errorExists = true; TransformationLog.GenericLogEntry(e.Message, LogCategory.Error); } try { metaDataDocMgt.DeleteElementsDoc = XmlUtility.LoadFromFileToXml(userSetup.DeletePageElements); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } try { metaDataDocMgt.IgnorePagesDoc = XmlUtility.LoadFromFileToXml(userSetup.IgnorePages); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } try { metaDataDocMgt.InsertElementsDoc = XmlUtility.LoadFromFileToXml(userSetup.TransformPages); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } try { metaDataDocMgt.MoveElementsDoc = XmlUtility.LoadFromFileToXml(userSetup.MovePageElements); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } try { metaDataDocMgt.RenumberPagesDoc = XmlUtility.LoadFromFileToXml(userSetup.MovePages); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } try { metaDataDocMgt.CodeRulesDoc.Clear(); metaDataDocMgt.CodeRulesDoc.AddRange(XmlUtility.LoadFromFileToString(userSetup.CodeRulesFile)); } catch (Exception e) { TransformationLog.GenericLogEntry(e.Message, LogCategory.CheckInputFile); } if (errorExists) { TransformationLog.GenericLogEntry("Transformation aborted", LogCategory.Error); return(false); } return(true); }
private static void WriteAbortTransformation(Exception e) { TransformationLog.WriteErrorToLogFile(e, (int)LogEntryObjectId.NotSpecified); Console.WriteLine("Transformation aborted, look in the log file for details."); }