WorkCalendarServiceProxy¶
WorkCalendarServiceProxy hides the internal generated SAIFDatesSoapClient behind four work-day calendar queries, each a direct pass-through to the same-named wire operation with no local business logic. It has no in-repository caller and is reachable only by package consumers*.
Purpose¶
- Answer first/last work-day-of-month, working-day, and next-work-day questions for a named calendar (OP-WP-06).
Context¶
- Namespace:
SAIF.Services.Web.Proxies - Assembly/package:
SAIF.Services.Web.Proxies(packaged inSAIF.SAIFCode.Core)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
| Constructor | WorkCalendarServiceProxy(string serviceUrl) |
Guards serviceUrl, then builds a default BasicHttpBinding client (WP-BR-001) |
FirstWorkDayOfMonth |
DateTime FirstWorkDayOfMonth(DateTime date, string calendar) |
Returns the first work day of the month containing date, per the named calendar |
IsWorkingDay |
bool IsWorkingDay(DateTime date, string calendar) |
Returns whether date is a working day per the named calendar |
LastWorkDayOfMonth |
DateTime LastWorkDayOfMonth(DateTime date, string calendar) |
Returns the last work day of the month containing date, per the named calendar |
NextWorkDay |
DateTime NextWorkDay(DateTime date, string calendar) |
Returns the next work day after date, per the named calendar |
Dispose |
void Dispose() |
Closes the underlying generated SAIFDatesSoapClient by calling Close(), without an Abort() fallback on a faulted channel* |
Behavioral notes¶
- None of the four query methods performs local validation of
dateorcalendar; an unknown calendar name or invalid date is handled entirely by the remote WorkCalendar service*.
Constraints and usage notes¶
- Callers must supply the endpoint URL; this wrapper reads no configuration of its own.
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.
Sources¶
Services/SAIF.Services.Web.Proxies/WorkCalendarServiceProxy.cs