// Token: 0x06001E25 RID: 7717 RVA: 0x000AED6C File Offset: 0x000ACF6C public static FreeBusyQueryResult[] BatchLoadData(UserContext userContext, string[] smtpAddresses, StoreObjectId[] folderStoreIds, DateRange[] dateRanges) { if (smtpAddresses == null || smtpAddresses.Length == 0) { throw new ArgumentNullException("smtpAddresses"); } if (dateRanges == null || dateRanges.Length == 0) { throw new ArgumentNullException("dateRanges"); } ExTraceGlobals.CalendarCallTracer.TraceDebug(0L, "GSCalendarDataSource.Load"); AvailabilityQuery availabilityQuery = new AvailabilityQuery(); availabilityQuery.MailboxArray = new MailboxData[smtpAddresses.Length]; availabilityQuery.ClientContext = ClientContext.Create(userContext.LogonIdentity.ClientSecurityContext, userContext.ExchangePrincipal.MailboxInfo.OrganizationId, OwaContext.TryGetCurrentBudget(), userContext.TimeZone, userContext.UserCulture, AvailabilityQuery.CreateNewMessageId()); for (int i = 0; i < smtpAddresses.Length; i++) { availabilityQuery.MailboxArray[i] = new MailboxData(); availabilityQuery.MailboxArray[i].Email = new EmailAddress(); availabilityQuery.MailboxArray[i].Email.Address = smtpAddresses[i]; availabilityQuery.MailboxArray[i].AssociatedFolderId = folderStoreIds[i]; } availabilityQuery.DesiredFreeBusyView = new FreeBusyViewOptions { TimeWindow = new Duration(), TimeWindow = { StartTime = (DateTime)DateRange.GetMinStartTimeInRangeArray(dateRanges), EndTime = (DateTime)DateRange.GetMaxEndTimeInRangeArray(dateRanges) }, MergedFreeBusyIntervalInMinutes = userContext.UserOptions.HourIncrement, RequestedView = FreeBusyViewType.Detailed }; AvailabilityQueryResult availabilityQueryResult = Utilities.ExecuteAvailabilityQuery(availabilityQuery); if (availabilityQueryResult == null) { return(null); } return(availabilityQueryResult.FreeBusyResults); }
protected void RenderOOF(TextWriter writer) { if (writer == null) { throw new ArgumentNullException("writer"); } AvailabilityQuery availabilityQuery = new AvailabilityQuery(); if (HttpContext.Current != null) { availabilityQuery.HttpResponse = HttpContext.Current.Response; } availabilityQuery.MailboxArray = new MailboxData[1]; availabilityQuery.MailboxArray[0] = new MailboxData(); availabilityQuery.MailboxArray[0].Email = new EmailAddress(); availabilityQuery.MailboxArray[0].Email.Address = base.ADRecipient.PrimarySmtpAddress.ToString(); availabilityQuery.ClientContext = ClientContext.Create(base.UserContext.LogonIdentity.ClientSecurityContext, base.UserContext.ExchangePrincipal.MailboxInfo.OrganizationId, OwaContext.TryGetCurrentBudget(), base.UserContext.TimeZone, base.UserContext.UserCulture, AvailabilityQuery.CreateNewMessageId()); ExDateTime date = DateTimeUtilities.GetLocalTime().Date; ExDateTime exDateTime = date.IncrementDays(1); availabilityQuery.DesiredFreeBusyView = new FreeBusyViewOptions { RequestedView = FreeBusyViewType.Detailed, MergedFreeBusyIntervalInMinutes = 1440, TimeWindow = new Duration((DateTime)date, (DateTime)exDateTime.IncrementDays(1)) }; AvailabilityQueryResult availabilityQueryResult; if (Utilities.ExecuteAvailabilityQuery(base.OwaContext, availabilityQuery, true, out availabilityQueryResult)) { FreeBusyQueryResult freeBusyQueryResult = availabilityQueryResult.FreeBusyResults[0]; if (freeBusyQueryResult != null) { string currentOofMessage = freeBusyQueryResult.CurrentOofMessage; if (!string.IsNullOrEmpty(currentOofMessage)) { writer.Write("<tr><td class=\"spcOP\"></td></tr>"); writer.Write("<tr><td class=\"oof oofF\">"); writer.Write(LocalizedStrings.GetHtmlEncoded(77678270)); writer.Write("</td></tr>"); writer.Write("<tr><td class=\"oof\">"); writer.Write("<textarea name=\"off\" rows=3 cols=100 readonly>"); writer.Write(currentOofMessage); writer.Write("</textarea>"); } } } }