Example #1
0
 public void LoadFolderMap(GetFolderMapFlags flags, Func <FolderMap> getFolderMap)
 {
     if (this.FolderMap != null && !flags.HasFlag(GetFolderMapFlags.ForceRefresh))
     {
         return;
     }
     this.FolderMap = getFolderMap();
 }
Example #2
0
 public override FolderMap GetSourceFolderMap(GetFolderMapFlags flags)
 {
     base.SourceMailboxWrapper.LoadFolderMap(flags, delegate
     {
         FolderHierarchy folderHierarchy = new FolderHierarchy(FolderHierarchyFlags.None, base.SourceMailboxWrapper);
         folderHierarchy.LoadHierarchy(EnumerateFolderHierarchyFlags.None, null, false, this.GetAdditionalFolderPtags());
         return(folderHierarchy);
     });
     return(base.SourceMailboxWrapper.FolderMap);
 }
Example #3
0
 public override FolderMap GetDestinationFolderMap(GetFolderMapFlags flags)
 {
     base.DestMailboxWrapper.LoadFolderMap(flags, delegate
     {
         FolderHierarchy folderHierarchy = new FolderHierarchy(FolderHierarchyFlags.PublicFolderMailbox, base.DestMailboxWrapper);
         folderHierarchy.LoadHierarchy(EnumerateFolderHierarchyFlags.None, null, false, new PropTag[]
         {
             PropTag.ReplicaList,
             PropTag.LTID,
             PropTag.TimeInServer
         });
         return(folderHierarchy);
     });
     return(base.DestMailboxWrapper.FolderMap);
 }
Example #4
0
 public override FolderMap GetDestinationFolderMap(GetFolderMapFlags flags)
 {
     base.DestMailboxWrapper.LoadFolderMap(flags, delegate
     {
         List <FolderRecWrapper> list = new List <FolderRecWrapper>(this.hierarchyFolderEntryIds.Count);
         foreach (byte[] entryId in this.hierarchyFolderEntryIds)
         {
             byte[] sessionSpecificEntryId = base.DestMailbox.GetSessionSpecificEntryId(entryId);
             using (IDestinationFolder folder = base.DestMailbox.GetFolder(sessionSpecificEntryId))
             {
                 list.Add(new FolderRecWrapper(folder.GetFolderRec(null, GetFolderRecFlags.None)));
             }
         }
         return(new PublicFolderMap(list));
     });
     return(base.DestMailboxWrapper.FolderMap);
 }