public TReturn Recurrence(ERecurFromType recurFromType, Func <DateProjectionCreateHelper, IDateProjection> dateProjectionFactory) { IDateProjection dateProjection = dateProjectionFactory(new DateProjectionCreateHelper()); this.Activity.Recurrence = new DateRecurrence(dateProjection, recurFromType); return((TReturn)this); }
public DateRecurrence(IDateProjection recurObj, ERecurFromType recurFrom, int maxRecurrenceCount) : base(recurObj) { this.MaxRecurrenceCount = maxRecurrenceCount; this.StartDate = DateTime.MinValue; this.EndDate = DateTime.MaxValue; this.RecurFromType = recurFrom; }
public static IDateProjection CreateDateProjectionImpl(EDateProjectionType newType, IDateProjection oldProjectionObj) { IDateProjection newProjectionObj = CreateDateProjectionImpl(newType); newProjectionObj.GetTranslator().PeriodCount = oldProjectionObj.GetTranslator().PeriodCount; newProjectionObj.GetTranslator().DaysOfWeekFlags = oldProjectionObj.GetTranslator().DaysOfWeekFlags; newProjectionObj.GetTranslator().DayOfMonth = oldProjectionObj.GetTranslator().DayOfMonth; newProjectionObj.GetTranslator().DaysOfWeekExt = oldProjectionObj.GetTranslator().DaysOfWeekExt; newProjectionObj.GetTranslator().WeeksInMonth = oldProjectionObj.GetTranslator().WeeksInMonth; newProjectionObj.GetTranslator().Month = oldProjectionObj.GetTranslator().Month; return(newProjectionObj); }
public DateRecurrence(IDateProjection recurObj, ERecurFromType recurFrom, DateTime startDate, DateTime endDate) : base(recurObj) { this.MaxRecurrenceCount = 0; this.StartDate = startDate; this.EndDate = endDate; if (this.StartDate > this.EndDate) { throw new ArgumentException($"Start date ({startDate}) is after the end date ({endDate})."); } this.RecurFromType = recurFrom; }
public DateProjection(IDateProjection recurObj) { this.DateProjectionImpl = recurObj; }
public TReturn LeadTime(IDateProjection dateProjection) { this.Activity.LeadTime = new DateProjection(dateProjection); return((TReturn)this); }