mirror of
https://github.com/Theodor-Springmann-Stiftung/hamann-ausgabe-core.git
synced 2025-12-16 14:35:32 +00:00
added basic start page setup; began rewrite of parser
This commit is contained in:
@@ -1,70 +1,70 @@
|
||||
using System.Collections.Generic;
|
||||
using HaDocument.Interfaces;
|
||||
// using System.Collections.Generic;
|
||||
// using HaDocument.Interfaces;
|
||||
|
||||
namespace HaDocument.Models
|
||||
{
|
||||
public class IntermediateLibrary
|
||||
{
|
||||
public Dictionary<string, Tradition> Traditions;
|
||||
public Dictionary<string, Person> Persons;
|
||||
public Dictionary<string, Meta> Metas;
|
||||
public Dictionary<string, Marginal> Marginals;
|
||||
public Dictionary<string, Location> Locations;
|
||||
public Dictionary<string, Letter> Letters;
|
||||
public Dictionary<string, Person> HandPersons;
|
||||
public Dictionary<string, Editreason> Editreasons;
|
||||
public Dictionary<string, Comment> Comments;
|
||||
public Dictionary<string, List<Backlink>> Backlinks;
|
||||
public Dictionary<string, List<Hand>> Hands;
|
||||
// namespace HaDocument.Models
|
||||
// {
|
||||
// public class IntermediateLibrary
|
||||
// {
|
||||
// public Dictionary<string, Tradition> Traditions;
|
||||
// public Dictionary<string, Person> Persons;
|
||||
// public Dictionary<string, Meta> Metas;
|
||||
// public Dictionary<string, Marginal> Marginals;
|
||||
// public Dictionary<string, Location> Locations;
|
||||
// public Dictionary<string, Letter> Letters;
|
||||
// public Dictionary<string, Person> HandPersons;
|
||||
// public Dictionary<string, Editreason> Editreasons;
|
||||
// public Dictionary<string, Comment> Comments;
|
||||
// public Dictionary<string, List<Backlink>> Backlinks;
|
||||
// public Dictionary<string, List<Hand>> Hands;
|
||||
|
||||
// Helper Library for precalculationg the Structure of the Document:
|
||||
public Dictionary<string, Dictionary<string, HashSet<string>>> LetterPageLines;
|
||||
// // Helper Library for precalculationg the Structure of the Document:
|
||||
// public Dictionary<string, Dictionary<string, HashSet<string>>> LetterPageLines;
|
||||
|
||||
public Library GetLibrary(IHaDocumentOptions options)
|
||||
{
|
||||
var Structure = new Dictionary<string, Dictionary<string, Dictionary<string, string>>>();
|
||||
foreach (var letter in LetterPageLines)
|
||||
{
|
||||
if (Metas.ContainsKey(letter.Key) &&
|
||||
Metas[letter.Key].ZH != null)
|
||||
{
|
||||
if (!Structure.ContainsKey(Metas[letter.Key].ZH.Volume))
|
||||
{
|
||||
Structure.Add(Metas[letter.Key].ZH.Volume, new Dictionary<string, Dictionary<string, string>>());
|
||||
}
|
||||
foreach (var page in letter.Value)
|
||||
{
|
||||
if (!Structure[Metas[letter.Key].ZH.Volume].ContainsKey(page.Key))
|
||||
{
|
||||
Structure[Metas[letter.Key].ZH.Volume].Add(page.Key, new Dictionary<string, string>());
|
||||
}
|
||||
foreach (var line in page.Value)
|
||||
{
|
||||
if (!Structure[Metas[letter.Key].ZH.Volume][page.Key].ContainsKey(line))
|
||||
{
|
||||
Structure[Metas[letter.Key].ZH.Volume][page.Key].Add(line, letter.Key);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// public Library GetLibrary(IHaDocumentOptions options)
|
||||
// {
|
||||
// var Structure = new Dictionary<string, Dictionary<string, Dictionary<string, string>>>();
|
||||
// foreach (var letter in LetterPageLines)
|
||||
// {
|
||||
// if (Metas.ContainsKey(letter.Key) &&
|
||||
// Metas[letter.Key].ZH != null)
|
||||
// {
|
||||
// if (!Structure.ContainsKey(Metas[letter.Key].ZH.Volume))
|
||||
// {
|
||||
// Structure.Add(Metas[letter.Key].ZH.Volume, new Dictionary<string, Dictionary<string, string>>());
|
||||
// }
|
||||
// foreach (var page in letter.Value)
|
||||
// {
|
||||
// if (!Structure[Metas[letter.Key].ZH.Volume].ContainsKey(page.Key))
|
||||
// {
|
||||
// Structure[Metas[letter.Key].ZH.Volume].Add(page.Key, new Dictionary<string, string>());
|
||||
// }
|
||||
// foreach (var line in page.Value)
|
||||
// {
|
||||
// if (!Structure[Metas[letter.Key].ZH.Volume][page.Key].ContainsKey(line))
|
||||
// {
|
||||
// Structure[Metas[letter.Key].ZH.Volume][page.Key].Add(line, letter.Key);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
}
|
||||
// }
|
||||
|
||||
return new Library(
|
||||
Traditions,
|
||||
Persons,
|
||||
Metas,
|
||||
Marginals,
|
||||
Locations,
|
||||
Letters,
|
||||
HandPersons,
|
||||
Editreasons,
|
||||
Comments,
|
||||
Backlinks,
|
||||
Hands,
|
||||
Structure,
|
||||
options
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
// return new Library(
|
||||
// Traditions,
|
||||
// Persons,
|
||||
// Metas,
|
||||
// Marginals,
|
||||
// Locations,
|
||||
// Letters,
|
||||
// HandPersons,
|
||||
// Editreasons,
|
||||
// Comments,
|
||||
// Backlinks,
|
||||
// Hands,
|
||||
// Structure,
|
||||
// options
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
Reference in New Issue
Block a user