예제 #1
0
 protected override byte[] GetMessageKey(MessageRec messageRec, MailboxWrapperFlags flags)
 {
     if (flags == MailboxWrapperFlags.Target)
     {
         return((messageRec[this.DestHierarchy.SourceEntryIDPtag] as byte[]) ?? messageRec.EntryId);
     }
     return(messageRec.EntryId);
 }
예제 #2
0
 public MailboxWrapper(IMailbox mailbox, MailboxWrapperFlags flags, LocalizedString tracingId) : base(mailbox, null)
 {
     this.Flags           = flags;
     this.tracingContext  = new WrappedDataContext(tracingId);
     this.mailboxVersion  = null;
     base.CreateContext   = new CommonUtils.CreateContextDelegate(this.CreateDataContext);
     this.NamedPropMapper = new NamedPropMapper(this.Mailbox, (this.Flags & MailboxWrapperFlags.Target) != (MailboxWrapperFlags)0);
     this.PrincipalMapper = new PrincipalMapper(this.Mailbox);
 }
예제 #3
0
 protected override PropTag[] GetEnumerateMessagesPropsForContentVerification(MailboxWrapperFlags flags)
 {
     if (flags == MailboxWrapperFlags.Target)
     {
         return(new PropTag[]
         {
             this.DestHierarchy.SourceEntryIDPtag
         });
     }
     return(null);
 }
 public DestinationMailboxWrapper(IDestinationMailbox mailbox, MailboxWrapperFlags flags, LocalizedString tracingId, params Guid[] syncStateKeyPrefixGuids) : base(mailbox, flags, tracingId)
 {
     Guid[] array = new Guid[syncStateKeyPrefixGuids.Length + 1];
     syncStateKeyPrefixGuids.CopyTo(array, 0);
     array[syncStateKeyPrefixGuids.Length] = DestinationMailboxWrapper.SyncStateKeySuffix;
     this.syncStateKey = DestinationMailboxWrapper.GetSyncStateKey(array);
     array[syncStateKeyPrefixGuids.Length] = DestinationMailboxWrapper.ICSSyncStateKeySuffix;
     this.icsSyncStateKey = DestinationMailboxWrapper.GetSyncStateKey(array);
     array[syncStateKeyPrefixGuids.Length] = DestinationMailboxWrapper.ReplaySyncStateKeySuffix;
     this.replaySyncStateKey = DestinationMailboxWrapper.GetSyncStateKey(array);
 }
 public SourceMailboxWrapper(IMailbox mailbox, MailboxWrapperFlags flags, LocalizedString tracingId) : base(mailbox, flags, tracingId)
 {
 }
예제 #6
0
 protected override byte[] GetMessageKey(MessageRec messageRec, MailboxWrapperFlags flags)
 {
     return((byte[])messageRec[PropTag.LTID]);
 }