Exemplo n.º 1
0
        /// <summary>
        /// Serializer the exception into XML
        /// </summary>
        /// <param name="exception">Exception object to serialize</param>
        /// <returns>XML serialized representation of the exception object</returns>
        public static string CreateExceptionStubXml(System.Exception exception)
        {
            ExceptionStub         stub       = CreateExceptionStub(exception);
            ISerializationManager serializer = new XmlSerializationManager();

            return(serializer.Serialize <ExceptionStub>(stub));
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Stopwatch watch = new Stopwatch();

            watch.Start();
            var xmlSerializer = new XmlSerializationManager <TVAMain>();

            //TVAMain epgFile;

            //epgFile = xmlSerializer.Read(System.IO.File.ReadAllText(@"C:\Users\Simon\Desktop\formatted_tva_epg_file.xml"));

            //var programData = epgFile.ProgramDescription.ProgramInformationTable;
            //var seriesData = epgFile.ProgramDescription.GroupInformationTable;

            //foreach (var item in programData)
            //{
            //    Console.WriteLine($"Program ID: {item?.programId}");
            //}
            //watch.Stop();
            //Console.WriteLine($"Completed in {watch.Elapsed.TotalSeconds} Seconds");

            Console.WriteLine("Loading Config file");
            var xmlConfigSerializer = new ConfigSerializationHelper <EPG_Parser_Config>();

            Console.WriteLine(!xmlConfigSerializer.LoadConfigurationFile("./Config/EPG_Parser_Config.xml")
                ? "Failed to Load config file?"
                : "Successfully Loaded Configuration File");


            Console.WriteLine($"Connecting to FTP Server: {EPG_Parser_Config.SftpHost}");

            var sftpOperations = new SftpOperations();

            if (!sftpOperations.RetrieveLatestEpgFile())
            {
                return;
            }

            //Need to capture epgfile here and dispose sftp resources
            Console.WriteLine("SFTP Operations completed successfully");
            EpgArchiveOperations archiveOperations = new EpgArchiveOperations();

            Console.WriteLine(
                archiveOperations.ProcessEpgArchive(sftpOperations.LatestEpg.FullName)
                ? "Epg file Successfully unpacked"
                : "Operations Failed during unpacking of Epg File");
        }
 public void SaveAdiFile(string filePath, ADI adiFileContent)
 {
     XmlSerializer = new XmlSerializationManager <ADI>();
     XmlSerializer.Save(filePath, adiFileContent);
 }
        public bool SerializeAdiFile(bool isUpdate, string adiData = "", bool loadUpdateAdi = false, bool isUpdateService = false)
        {
            try
            {
                XmlSerializer = new XmlSerializationManager <ADI>();

                if (!isUpdate)
                {
                    AdiFile = new ADI();
                    AdiFile = XmlSerializer.Read(
                        System.IO.File.ReadAllText(Path.Combine(CurrentWorkingDirectory, "ADI.xml")));
                }
                if (isUpdate & !loadUpdateAdi)
                {
                    EnrichedAdi = new ADI();
                    EnrichedAdi = XmlSerializer.Read(adiData);
                }

                if (loadUpdateAdi)
                {
                    if (!isUpdateService)
                    {
                        Log.Info("Loading DB Update ADI.");
                    }
                    UpdateAdi = new ADI();
                    UpdateAdi = XmlSerializer.Read(adiData);
                }
                if (!isUpdate & AdiFile == null)
                {
                    throw new Exception("Adi file is null check namespaces and adi document structure?");
                }

                if (!isUpdateService)
                {
                    Log.Info("ADI Loaded correctly and will continue processing.");
                }

                if (AdiFile != null)
                {
                    AdiVersionMajor = AdiFile.Metadata.AMS.Version_Major;
                    AdiVersionMinor = AdiFile.Metadata.AMS.Version_Minor;
                }


                if (!isUpdateService)
                {
                    Log.Info($"Asset Version Major: {AdiVersionMajor}");
                }
                return(true);
            }
            catch (Exception adfEx)
            {
                Log.Error($"[SerializeAdiFile] Error during serialization of ADI file: {adfEx.Message}");
                if (adfEx.InnerException != null)
                {
                    Log.Error($"[SerializeAdiFile] Inner exception: {adfEx.InnerException.Message}");
                }

                return(false);
            }
        }