private async Task <CalendarEvent> GetSickLeave(string eventId) { var message = new GetCalendarEvent(eventId); var response = await this.sickLeavesRegistry.Ask <GetCalendarEvent.Response>(message); if (response is GetCalendarEvent.Response.Found success) { return(success.Event); } return(null); }
private async Task <GetCalendarEvent.Response> FindSpecificCalendarEvent(GetCalendarEvent request) { var responses = await this.GetActorResponses <GetCalendarEvent.Response>(request); var result = responses.OfType <GetCalendarEvent.Response.Found>().FirstOrDefault()?.Event; if (result == null) { return(new GetCalendarEvent.Response.NotFound()); } else { return(new GetCalendarEvent.Response.Found(result)); } }