예제 #1
0
 public void EnumerateRestriction(FolderRec folderRec, BadItemKind badItemKind, RestrictionData rest)
 {
     if (rest != null)
     {
         CommonUtils.ProcessKnownExceptions(delegate
         {
             rest.EnumeratePropTags(new CommonUtils.EnumPropTagDelegate(this.EnumeratePtag));
         }, delegate(Exception ex)
         {
             if (this.reportBadItemsDelegate != null && CommonUtils.ExceptionIsAny(ex, new WellKnownException[]
             {
                 WellKnownException.DataProviderPermanent,
                 WellKnownException.CorruptData
             }))
             {
                 List <BadMessageRec> list = new List <BadMessageRec>(1);
                 list.Add(BadMessageRec.Folder(folderRec, badItemKind, ex));
                 this.reportBadItemsDelegate(list);
                 return(true);
             }
             return(false);
         });
         this.hasUnresolvedMappings = true;
     }
 }
예제 #2
0
 public void TranslateRestriction(RestrictionData rest)
 {
     if (rest != null)
     {
         this.ResolveMappingsIfNeeded();
         rest.EnumeratePropTags(new CommonUtils.EnumPropTagDelegate(this.TranslatePtag));
     }
 }