コード例 #1
0
 protected FolderContentsMapper(FolderMapping folderMapping, ISourceFolder srcFolder, FolderHierarchy sourceHierarchy, IDestinationFolder destFolder, FolderHierarchy destHierarchy, ConflictResolutionOption conflictResolutionOption, FAICopyOption faiCopyOption, FolderContentsMapperFlags mapperFlags)
 {
     this.folderMapping            = folderMapping;
     this.srcFolder                = srcFolder;
     this.destFolder               = destFolder;
     this.destHierarchy            = destHierarchy;
     this.sourceHierarchy          = sourceHierarchy;
     this.conflictResolutionOption = conflictResolutionOption;
     this.faiCopyOption            = faiCopyOption;
     this.sourceMapping            = new EntryIdMap <MessageRec>();
     this.targetMapping            = new EntryIdMap <MessageRec>();
     this.mapperFlags              = mapperFlags;
 }
コード例 #2
0
 public static FolderContentsMapper Create(FolderMapping folderMapping, ISourceFolder srcFolder, FolderHierarchy sourceHierarchy, IDestinationFolder destFolder, FolderHierarchy destHierarchy, ConflictResolutionOption conflictResolutionOption, FAICopyOption faiCopyOption, FolderContentsMapperFlags mapperFlags)
 {
     if (!mapperFlags.HasFlag(FolderContentsMapperFlags.ImapSync))
     {
         return(new FolderContentsMapper(folderMapping, srcFolder, sourceHierarchy, destFolder, destHierarchy, conflictResolutionOption, faiCopyOption, mapperFlags));
     }
     return(new ImapFolderContentsMapper(folderMapping, srcFolder, sourceHierarchy, destFolder, destHierarchy, conflictResolutionOption, faiCopyOption, mapperFlags));
 }
コード例 #3
0
 public static bool ShouldItemBeIgnored(MessageRec msgRec, EntryIdMap <BadItemMarker> badItemMarkers, FAICopyOption faiCopyOption, out string faiMessageClass)
 {
     faiMessageClass = null;
     if (msgRec.IsFAI)
     {
         if (faiCopyOption == FAICopyOption.DoNotCopy)
         {
             return(true);
         }
         faiMessageClass = (msgRec[PropTag.MessageClass] as string);
         if (!string.IsNullOrEmpty(faiMessageClass) && FolderContentsMapper.IgnoredFaiMessageClasses.Contains(faiMessageClass))
         {
             return(true);
         }
     }
     if (badItemMarkers != null && badItemMarkers.ContainsKey(msgRec.EntryId))
     {
         BadItemMarker badItemMarker = badItemMarkers[msgRec.EntryId];
         if (FolderContentsMapper.SkippedBadItemKinds.Contains(badItemMarker.Kind))
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #4
0
 public ImapFolderContentsMapper(FolderMapping folderMapping, ISourceFolder srcFolder, FolderHierarchy sourceHierarchy, IDestinationFolder destFolder, FolderHierarchy destHierarchy, ConflictResolutionOption conflictResolutionOption, FAICopyOption faiCopyOption, FolderContentsMapperFlags mapperFlags) : base(folderMapping, srcFolder, sourceHierarchy, destFolder, destHierarchy, conflictResolutionOption, faiCopyOption, mapperFlags)
 {
 }