Add Blazor WebApp and rework data handling to utilize Entity Framework
This commit is contained in:
@@ -7,9 +7,9 @@ namespace Core.Parsers;
|
||||
public class EventOccurrenceParser
|
||||
{
|
||||
private FileSystemInfo _txtFile;
|
||||
private ICollection<CompetitiveEvent> _events;
|
||||
private ICollection<EventDefinition> _events;
|
||||
|
||||
public EventOccurrenceParser(FileSystemInfo txtFile, ICollection<CompetitiveEvent> events)
|
||||
public EventOccurrenceParser(FileSystemInfo txtFile, ICollection<EventDefinition> events)
|
||||
{
|
||||
_events = events;
|
||||
_txtFile = txtFile;
|
||||
@@ -28,10 +28,10 @@ public class EventOccurrenceParser
|
||||
|
||||
private readonly Regex _timeLocationRegex = new(@"(?<Time>.*(?>[AaPp]\.?[Mm]\.?))(?<Location>[\s\t].*)?");
|
||||
|
||||
public IDictionary<CompetitiveEvent, List<EventOccurrence>> Parse()
|
||||
public IDictionary<EventDefinition, List<EventOccurrence>> Parse()
|
||||
{
|
||||
var occurrences = new Dictionary<CompetitiveEvent, List<EventOccurrence>>();
|
||||
CompetitiveEvent currentEvent = null;
|
||||
var occurrences = new Dictionary<EventDefinition, List<EventOccurrence>>();
|
||||
EventDefinition currentEventDefinition = null;
|
||||
|
||||
var lines = File.ReadLines(_txtFile.FullName);
|
||||
foreach (var line in lines)
|
||||
@@ -49,25 +49,25 @@ public class EventOccurrenceParser
|
||||
select e).FirstOrDefault();
|
||||
if (evt == null)
|
||||
continue;
|
||||
currentEvent = evt;
|
||||
currentEventDefinition = evt;
|
||||
continue;
|
||||
}
|
||||
if (line == "General Schedule")
|
||||
{
|
||||
currentEvent = CompetitiveEvent.GeneralSchedule;
|
||||
currentEventDefinition = EventDefinition.GeneralSchedule;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (line == "Voting Delegates")
|
||||
{
|
||||
currentEvent = CompetitiveEvent.VotingDelegates;
|
||||
currentEventDefinition = EventDefinition.VotingDelegates;
|
||||
continue;
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if (currentEvent == null)
|
||||
if (currentEventDefinition == null)
|
||||
continue;
|
||||
|
||||
var occurrenceName = match.Groups["Name"].Captures[0].Value;
|
||||
@@ -103,9 +103,9 @@ public class EventOccurrenceParser
|
||||
Location = location
|
||||
};
|
||||
|
||||
if (!occurrences.ContainsKey(currentEvent))
|
||||
occurrences.Add(currentEvent, []);
|
||||
occurrences[currentEvent].Add(eventOccurrence);
|
||||
if (!occurrences.ContainsKey(currentEventDefinition))
|
||||
occurrences.Add(currentEventDefinition, []);
|
||||
occurrences[currentEventDefinition].Add(eventOccurrence);
|
||||
}
|
||||
|
||||
return occurrences;
|
||||
|
||||
Reference in New Issue
Block a user