Class ScheduleCalendar
- Namespace
- RainPointClient
- Assembly
- RainPointClient.dll
Pure local-date calendar calculations from an existing typed snapshot; never performs I/O or executes plans.
public static class ScheduleCalendar
- Inheritance
-
ScheduleCalendar
- Inherited Members
Methods
Create(RainPointScheduleSnapshot, DateTime, DateTime)
Projects enabled plans over inclusive home-local dates (1..366 days). Unsupported enabled recurrence invalidates the whole projection rather than returning a partial next-plan result.
public static RainPointCalendarPreview Create(RainPointScheduleSnapshot snapshot, DateTime fromDate, DateTime throughDate)
Parameters
snapshotRainPointScheduleSnapshotThe observed zone configuration; unrelated encoded fields are preserved when editing.
fromDateDateTimeThe inclusive first home-local date at midnight with Unspecified kind.
throughDateDateTimeThe inclusive final home-local date at midnight with Unspecified kind.
Returns
- RainPointCalendarPreview
A bounded calendar projection with explicit availability; projected starts do not guarantee physical execution.
Create(RainPointScheduleSnapshot, DateTime, DateTime, RainPointCalendarTimeZone)
Projects the vendor app calendar using reported home timezone rules, including its UTC-day interval calculation around daylight changes. This is not a firmware execution promise.
public static RainPointCalendarPreview Create(RainPointScheduleSnapshot snapshot, DateTime fromDate, DateTime throughDate, RainPointCalendarTimeZone timeZone)
Parameters
snapshotRainPointScheduleSnapshotThe observed zone configuration; unrelated encoded fields are preserved when editing.
fromDateDateTimeThe inclusive first home-local date at midnight with Unspecified kind.
throughDateDateTimeThe inclusive final home-local date at midnight with Unspecified kind.
timeZoneRainPointCalendarTimeZoneThe home's reported offset and daylight-transition rules used for calendar calculations.
Returns
- RainPointCalendarPreview
A bounded calendar projection with explicit availability; projected starts do not guarantee physical execution.
Exceptions
- ArgumentNullException
A required argument is null.