Exemple #1
0
 public void DoExport()
 {
     using (var exporter = new PLiftExporter(_outputFile.Path, Repo, Template))
     {
         var allEntriesSortedByHeadword = Repo.GetAllEntriesSortedByHeadword(
             HeadwordWritingSystem
             );
         foreach (RecordToken <LexEntry> token in allEntriesSortedByHeadword)
         {
             int homographNumber = 0;
             if ((bool)token["HasHomograph"])
             {
                 homographNumber = (int)token["HomographNumber"];
             }
             exporter.Add(token.RealObject, homographNumber);
         }
         exporter.End();
     }
 }
Exemple #2
0
        //private string MakePLiftTempFile(IEnumerable<LexEntry> entries, ViewTemplate template, IFindEntries finder)
        //{
        //    string path = Path.Combine(Path.GetTempPath(), Path.GetTempFileName());
        //    WeSayLiftWriter exporter = new WeSayLiftWriter(path);
        //    exporter.SetUpForPresentationLiftExport(template, finder);
        //    foreach (LexEntry entry in entries)
        //    {
        //        exporter.Add(entry);
        //    }
        //    exporter.End();
        //    return path;
        //}

        public void  MakePLiftTempFile(string outputPath, LexEntryRepository lexEntryRepository, ViewTemplate template, LiftWriter.ByteOrderStyle style)
        {
            using (var exporter = new PLiftExporter(outputPath, lexEntryRepository, template))
            {
                exporter.ExportOptions = Options;

                ResultSet <LexEntry> recordTokens =
                    lexEntryRepository.GetAllEntriesSortedByHeadword(template.HeadwordWritingSystem);
                foreach (RecordToken <LexEntry> token in recordTokens)
                {
                    int homographNumber = 0;
                    if ((bool)token["HasHomograph"])
                    {
                        homographNumber = (int)token["HomographNumber"];
                    }
                    exporter.Add(token.RealObject, homographNumber);
                }

                exporter.End();
            }
        }
Exemple #3
0
        private string GetXhtmlContents(IList <LexEntry> entries)
        {
            if (entries != null)
            {
                entries.ForEach(e => _repo.SaveItem(e));
            }


            var pliftbuilder = new StringBuilder();

            using (var pexp = new PLiftExporter(pliftbuilder, false, _repo, _project.DefaultPrintingTemplate))
            {
                ResultSet <LexEntry> recordTokens =
                    _repo.GetAllEntriesSortedByHeadword(_project.DefaultPrintingTemplate.HeadwordWritingSystems[0]);


                foreach (RecordToken <LexEntry> token in recordTokens)
                {
                    pexp.Add(token.RealObject);
                }
                pexp.End();
            }
            var builder = new StringBuilder();

            using (var w = new StringWriter(builder))
            {
                var x = new FLExCompatibleXhtmlWriter();

                //  try
                {
                    x.Write(new StringReader(pliftbuilder.ToString()), w);
                }
//                catch(Exception e)
//                {
//                    Console.WriteLine(pliftbuilder.ToString());
//                    throw e;
//                }
            }
            return(builder.ToString());
        }
		private void Make(ViewTemplate template, string path)
		{
			PLiftExporter exporter = new PLiftExporter(path, _lexEntryRepository, template);

			ResultSet<LexEntry> allEntriesSortedByHeadword =
					this._lexEntryRepository.GetAllEntriesSortedByHeadword(
							this._headwordWritingSystem);
			foreach (RecordToken<LexEntry> token in allEntriesSortedByHeadword)
			{
				int homographNumber = 0;
				if ((bool) token["HasHomograph"])
				{
					homographNumber = (int) token["HomographNumber"];
				}
				exporter.Add(token.RealObject, homographNumber);
			}
			exporter.End();
		}