예제 #1
0
 public void QueryBySubjectContains(MailboxSession session, string subject, string schemaKey, StorePropertyDefinition[] propertiesToFetch, Action <PropertyBag> matchFoundAction, ExDateTime?startDate = null, ExDateTime?endDate = null)
 {
     if (!CalendarVersionStoreGateway.ValidateDateRanges(ref startDate, ref endDate))
     {
         throw new ArgumentException("StartDate cannot be greater than EndDate", "startDate");
     }
     using (SearchFolder searchFolder = this.GetSearchFolder(session))
     {
         CalendarCorrelationMatch.QuerySubjectContains(searchFolder, subject, schemaKey, propertiesToFetch, this.useCachedPropertySetIfPresent, matchFoundAction, startDate.Value, endDate.Value);
     }
 }
예제 #2
0
 private void DirectQueryByGlobalObjectId(MailboxSession session, GlobalObjectId globalObjectId, string schemaKey, StorePropertyDefinition[] propertiesToFetch, Func <PropertyBag, bool> matchFoundAction, bool fetchResultsInReverseChronologicalOrder, bool useCleanGoid, bool useCachedPropertySetIfPresent, string[] itemClassFilter, ExDateTime?startDate = null, ExDateTime?endDate = null)
 {
     if (!CalendarVersionStoreGateway.ValidateDateRanges(ref startDate, ref endDate))
     {
         throw new ArgumentException("StartDate cannot be greater than EndDate", "startDate");
     }
     using (SearchFolder searchFolder = this.GetSearchFolder(session))
     {
         CalendarCorrelationMatch.QueryRelatedItems(searchFolder, globalObjectId, schemaKey, propertiesToFetch, useCachedPropertySetIfPresent, matchFoundAction, fetchResultsInReverseChronologicalOrder, !useCleanGoid, itemClassFilter, new ExDateTime?(startDate.Value), new ExDateTime?(endDate.Value));
     }
 }
        // Token: 0x06001576 RID: 5494 RVA: 0x0007E69C File Offset: 0x0007C89C
        private List <PropertyBag> QueryRelatedCalendarItems(DefaultFolderType defaultFolderType, GlobalObjectId goid)
        {
            List <PropertyBag> calendarItems = new List <PropertyBag>();

            using (Folder folder = Folder.Bind(base.MailboxSession, defaultFolderType))
            {
                CalendarCorrelationMatch.QueryRelatedItems(folder, goid, null, SendMailCommand.CalendarItemPropertySet, false, delegate(PropertyBag match)
                {
                    calendarItems.Add(match);
                    return(true);
                }, false, false, SendMailCommand.CalendarItemClassFilter, null, null);
            }
            AirSyncDiagnostics.TraceDebug <int, DefaultFolderType>(ExTraceGlobals.RequestsTracer, this, "Found {0} related calendar items in folder {0}", calendarItems.Count, defaultFolderType);
            return(calendarItems);
        }