Exemplo n.º 1
0
 public ScheduleConstructor(ISchElemsFactory elemsFactory, SchElemsMerger branchMerger)
 {
     this.elemsFactory = elemsFactory;
     this.branchMerger = branchMerger;
 }
        private static (ISchedule, IScheduleGroup, Week, Day, Lesson) GetEmpty3LayersSchedule(ISchElemsFactory factory)
        {
            var res   = factory.GetSchedule();
            var group = new ScheduleGroup()
            {
                GType = ScheduleGroupType.Academic, Name = "11-401"
            };

            res.ScheduleGroups.Add(group);
            var week = factory.GetWeek();

            res.ScheduleRoot = week;
            var day    = factory.GetDay();
            var lesson = factory.GetLesson("test", "teacher", "place", new TimeSpan(8, 0, 0));

            day.Elems.Add(lesson);
            res.ScheduleRoot.Elems.Add(day);
            return(res, group, null, day, lesson);
        }
Exemplo n.º 3
0
 public SchElemsMerger(ISchElemsFactory defaultFactory, ILogger <SchElemsMerger> logger = null, ILogger <DayMergeStrategy> dmLogger = null)
 {
     this.defaultFactory = defaultFactory;
     this.logger         = logger;
     this.dmLogger       = dmLogger;
 }