protected override void UpdateStoreAssociationMasterData(MailboxAssociation association, IMailboxAssociationBaseItem item) { IMailboxAssociationGroup mailboxAssociationGroup = (IMailboxAssociationGroup)item; BaseAssociationAdaptor.UpdateLocatorDataInStoreItem(association.Group, mailboxAssociationGroup); mailboxAssociationGroup.IsPin = association.IsPin; mailboxAssociationGroup.PinDate = association.PinDate; }
protected override IMailboxAssociationBaseItem CreateStoreItem(MailboxLocator locator) { IMailboxAssociationGroup mailboxAssociationGroup = base.AssociationStore.CreateGroupAssociation(); mailboxAssociationGroup[MailboxAssociationBaseSchema.ExternalId] = (locator.ExternalId ?? string.Empty); mailboxAssociationGroup[MailboxAssociationBaseSchema.LegacyDN] = locator.LegacyDn; mailboxAssociationGroup[MailboxAssociationBaseSchema.IsPin] = false; return(mailboxAssociationGroup); }
protected override void UpdateStoreAssociationSlaveData(MailboxAssociation association, IMailboxAssociationBaseItem item) { IMailboxAssociationGroup mailboxAssociationGroup = (IMailboxAssociationGroup)item; BaseAssociationAdaptor.UpdateLocatorDataInStoreItem(association.Group, mailboxAssociationGroup); mailboxAssociationGroup.SyncedIdentityHash = association.User.IdentityHash; mailboxAssociationGroup.IsMember = association.IsMember; mailboxAssociationGroup.JoinDate = association.JoinDate; if (!association.IsMember) { mailboxAssociationGroup.IsPin = false; } }