private void ExportujImplOld(IEnumerable <IPrepis> prpPrepisy) { List <ITransformacniKrok> lsHlavicka = NactiTransformacniKrokyHlavicky(); List <ITransformacniKrok> lsUvod = NactiTransformacniKrokyUvodu(); List <ITransformacniKrok> lsTelo = NactiTransformacniKrokyTela(); List <ITransformacniKrok> lsPoSpojeni = NactiTransformacniKrokyPoSpojeni(); List <ITransformacniKrok> lsZaver = null; //List<ITransformacniKrok> lsPrirazeniId = NactiTransformacniKrokyPrirazeniId(); int iPoradi = 0; IUpravy ekup = new EdicniModulUpravy(Nastaveni); foreach (IPrepis prepis in prpPrepisy) { ekup.NastavVychoziHodnoty(); Zaloguj("Převádím soubor {0}", prepis.Soubor.Nazev, false); Console.WriteLine(); Console.WriteLine("Převádím soubor {0}", prepis.Soubor.Nazev); iPoradi++; string strVystup = null; string sKonecnyVystup = null; DateTime casExportu = Nastaveni.CasExportu == DateTime.MinValue ? DateTime.Now : Nastaveni.CasExportu; try { const string csPriponaXml = ".xml"; sKonecnyVystup = Path.Combine(Nastaveni.VystupniSlozka, prepis.Soubor.NazevBezPripony + csPriponaXml); FileInfo fi = new FileInfo(sKonecnyVystup); if (fi.Exists && fi.CreationTime == casExportu) { continue; } string strHlavicka = ekup.UpravHlavicku(prepis, lsHlavicka); string strUvod = ekup.UpravUvod(prepis, lsUvod); string strTelo = ekup.UpravTelo(prepis, lsTelo); string strZaver = ekup.UpravZaver(prepis, lsZaver); strVystup = ekup.DejNazevVystupu(prepis); //strVystup = Path.Combine(ekup.DocasnaSlozka, prepis.Soubor.NazevBezPripony + csPriponaXml); //strTelo = Vybor_UpravBiblickyText(strTelo); List <ITransformacniKrok> lsSpojeni = NactiTransformacniKrokySpojeni(strHlavicka, strUvod); strVystup = ekup.ZkombinujCastiTextu(prepis, strHlavicka, strUvod, strTelo, strZaver, lsSpojeni); //ZkombinujCastiTextu(strHlavicka, strUvod, strTelo, strZaver, strVystup); //strVystup = ekup.DejNazevVystupu(prepis); strVystup = ekup.UpravPoSpojeni(prepis, lsPoSpojeni); List <UpravaSouboruXml> lsup = new List <UpravaSouboruXml>(); lsup.Add(EdicniModulUpravy.PresunoutMezeryVneTagu); lsup.Add(EdicniModulUpravy.PridatMezeryZaTagyPoInterpunkci); //lsup.Add(Upravy.UpravitTextTypograficky); EdicniModulUpravy eu = ekup as EdicniModulUpravy; strVystup = ekup.ProvedUpravy(prepis, strVystup, lsup); } catch (Exception e) { //Console.WriteLine("Při konverzi nastala chyba. " + e.Message); Zaloguj("Při konverzi souboru {0} nastala chyba: {1}", prepis.Soubor.NazevBezPripony, e.Message, true); } finally { if (strVystup != null) { if (sKonecnyVystup != null && File.Exists(sKonecnyVystup)) { File.Delete(sKonecnyVystup); } File.Copy(strVystup, sKonecnyVystup); File.SetCreationTime(sKonecnyVystup, casExportu); if (Nastaveni.SmazatDocasneSoubory) { ekup.SmazDocasneSoubory(); } } } if (Nastaveni.Evidovat) { prepis.Zpracovani.ZaevidujExport(ZpusobVyuziti.EdicniModul, casExportu, prepis.Soubor.KontrolniSoucet); } } }
private void ExportujImpl(IPrepis prepis) { IList <IXsltTransformer> header = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "header", Nastaveni.SlozkaXslt); IList <IXsltTransformer> front = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "front", Nastaveni.SlozkaXslt); IList <IXsltTransformer> body = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "body", Nastaveni.SlozkaXslt); IList <IXsltTransformer> back = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "back", Nastaveni.SlozkaXslt); IList <IXsltTransformer> joining = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "joining", Nastaveni.SlozkaXslt); IList <IXsltTransformer> afterJoining = XsltTransformerFactory.GetXsltTransformers(Nastaveni.SouborTransformaci, "afterJoining", Nastaveni.SlozkaXslt); IUpravy ekup = new EdicniModulUpravy(Nastaveni); ekup.NastavVychoziHodnoty(); Zaloguj("Převádím soubor {0}", prepis.Soubor.Nazev, false); string strVystup = null; string sKonecnyVystup = null; DateTime casExportu = Nastaveni.CasExportu == DateTime.MinValue ? DateTime.Now : Nastaveni.CasExportu; string souborBezPripony = prepis.Soubor.NazevBezPripony; try { const string csPriponaXml = ".xml"; sKonecnyVystup = Path.Combine(Nastaveni.VystupniSlozka, prepis.Soubor.NazevBezPripony + csPriponaXml); FileInfo fi = new FileInfo(sKonecnyVystup); if (fi.Exists && fi.CreationTime == casExportu) { return; } string headerFile = Path.Combine(Nastaveni.DocasnaSlozka, String.Format("{0}_{1}.xml", souborBezPripony, "header")); var parameters = new NameValueCollection { { "soubor", prepis.Soubor.Nazev } }; ApplyTransformations(Nastaveni.SouborMetadat, headerFile, header, Nastaveni.DocasnaSlozka, parameters); string frontFile = Path.Combine(Nastaveni.DocasnaSlozka, String.Format("{0}_{1}.xml", souborBezPripony, "front")); ApplyTransformations(Nastaveni.SouborMetadat, frontFile, front, Nastaveni.DocasnaSlozka, parameters); parameters = new NameValueCollection { { "exportovatTransliteraci", prepis.Zpracovani.Transliterovane ? "true()" : "false()" } }; string bodyFile = Path.Combine(Nastaveni.DocasnaSlozka, String.Format("{0}_{1}.xml", souborBezPripony, "body")); ApplyTransformations(Path.Combine(Nastaveni.VstupniSlozka, souborBezPripony + csPriponaXml), bodyFile, body, Nastaveni.DocasnaSlozka, parameters); parameters.Add("hlavicka", headerFile); parameters.Add("zacatek", frontFile); string combineFile = Path.Combine(Nastaveni.DocasnaSlozka, String.Format("{0}_{1}.xml", souborBezPripony, "joining")); ApplyTransformations(bodyFile, combineFile, joining, Nastaveni.DocasnaSlozka, parameters); parameters = new NameValueCollection(); string afterCombineFile = Path.Combine(Nastaveni.DocasnaSlozka, String.Format("{0}_{1}.xml", souborBezPripony, "afterJoining")); ApplyTransformations(combineFile, afterCombineFile, afterJoining, Nastaveni.DocasnaSlozka, parameters); List <UpravaSouboruXml> lsup = new List <UpravaSouboruXml>(); lsup.Add(EdicniModulUpravy.PresunoutMezeryVneTagu); lsup.Add(EdicniModulUpravy.PridatMezeryZaTagyPoInterpunkci); lsup.Add(EdicniModulUpravy.RozdelitNaSlova); //lsup.Add(Upravy.UpravitTextTypograficky); EdicniModulUpravy eu = ekup as EdicniModulUpravy; strVystup = ekup.ProvedUpravy(prepis, afterCombineFile, lsup); } catch (Exception e) { Zaloguj("Při konverzi souboru {0} nastala chyba: {1}", prepis.Soubor.NazevBezPripony, e.Message, true); } finally { if (strVystup != null) { if (File.Exists(sKonecnyVystup)) { File.Delete(sKonecnyVystup); } File.Copy(strVystup, sKonecnyVystup); File.SetCreationTime(sKonecnyVystup, casExportu); if (Nastaveni.SmazatDocasneSoubory) { ekup.SmazDocasneSoubory(); } } } }