Exemplo n.º 1
0
        public static void ConvertE14MVtoE15MV(SyncServiceInstance serviceInstance, int maxCookieHistoryCount, TimeSpan cookieHistoryInterval)
        {
            ITopologyConfigurationSession ridmasterSession = MsoCookieConverter.GetRIDMasterSession();

            ridmasterSession.UseConfigNC = true;
            ADObjectId orgContainerId = ridmasterSession.GetOrgContainerId();
            ADRawEntry adrawEntry     = ridmasterSession.ReadADRawEntry(orgContainerId.Parent, MsoCookieConverter.E14MsoMainStreamCookieContainerSchema.CookieProperties);

            ridmasterSession.UseConfigNC = false;
            List <MsoMainStreamCookie>          ordredCookieList  = MsoCookieConverter.GetOrdredCookieList(serviceInstance.Name, adrawEntry.propertyBag[MsoCookieConverter.E14MsoMainStreamCookieContainerSchema.MsoForwardSyncNonRecipientCookie] as IEnumerable <byte[]>);
            List <MsoMainStreamCookie>          ordredCookieList2 = MsoCookieConverter.GetOrdredCookieList(serviceInstance.Name, adrawEntry.propertyBag[MsoCookieConverter.E14MsoMainStreamCookieContainerSchema.MsoForwardSyncRecipientCookie] as IEnumerable <byte[]>);
            MsoCompanyMainStreamCookieManager   msoCompanyMainStreamCookieManager   = new MsoCompanyMainStreamCookieManager(serviceInstance.Name, maxCookieHistoryCount, cookieHistoryInterval);
            MsoRecipientMainStreamCookieManager msoRecipientMainStreamCookieManager = new MsoRecipientMainStreamCookieManager(serviceInstance.Name, maxCookieHistoryCount, cookieHistoryInterval);

            if (ordredCookieList.Count > 0)
            {
                MsoMainStreamCookie msoMainStreamCookie = ordredCookieList.Last <MsoMainStreamCookie>();
                msoCompanyMainStreamCookieManager.WriteCookie(msoMainStreamCookie.RawCookie, null, msoMainStreamCookie.TimeStamp, msoMainStreamCookie.IsSyncPropertySetUpgrading, msoMainStreamCookie.SyncPropertySetVersion, true);
            }
            if (ordredCookieList2.Count > 0)
            {
                MsoMainStreamCookie msoMainStreamCookie2 = ordredCookieList2.Last <MsoMainStreamCookie>();
                msoRecipientMainStreamCookieManager.WriteCookie(msoMainStreamCookie2.RawCookie, null, msoMainStreamCookie2.TimeStamp, msoMainStreamCookie2.IsSyncPropertySetUpgrading, msoMainStreamCookie2.SyncPropertySetVersion, true);
            }
        }
Exemplo n.º 2
0
        private static void FromMultiValuedCookieToMultiObjectCookie(string serviceInstanceName, IEnumerable <byte[]> multiValueCookieAttribute, MsoMultiObjectCookieManager msoMultiObjectCookieManager)
        {
            List <MsoMainStreamCookie> ordredCookieList = MsoCookieConverter.GetOrdredCookieList(serviceInstanceName, multiValueCookieAttribute);

            if (ordredCookieList.Count > 0)
            {
                ForwardSyncCookie   forwardSyncCookie   = msoMultiObjectCookieManager.ReadMostRecentCookie();
                MsoMainStreamCookie msoMainStreamCookie = ordredCookieList.Last <MsoMainStreamCookie>();
                if (forwardSyncCookie == null || msoMainStreamCookie.TimeStamp > forwardSyncCookie.Timestamp)
                {
                    msoMultiObjectCookieManager.WriteCookie(msoMainStreamCookie.RawCookie, null, msoMainStreamCookie.TimeStamp, msoMainStreamCookie.IsSyncPropertySetUpgrading, msoMainStreamCookie.SyncPropertySetVersion, true);
                }
            }
        }