Example #1
0
        internal CopyStatusLookupComponent()
        {
            CopyStatusClientLookupTable statusTable          = null;
            IReplayAdObjectLookup       replayAdObjectLookup = Dependencies.ReplayAdObjectLookup;

            this.ActiveManagerInstance = ActiveManager.CreateCustomActiveManager(true, replayAdObjectLookup.DagLookup, replayAdObjectLookup.ServerLookup, replayAdObjectLookup.MiniServerLookup, null, null, replayAdObjectLookup.DatabaseLookup, replayAdObjectLookup.AdSession, true);
            if (CopyStatusLookupComponent.CopyStatusClientCachingEnabled)
            {
                statusTable           = new CopyStatusClientLookupTable();
                this.CopyStatusPoller = new CopyStatusPoller(Dependencies.MonitoringADConfigProvider, statusTable, this.ActiveManagerInstance);
            }
            this.CopyStatusLookup = new CopyStatusClientLookup(statusTable, this.CopyStatusPoller, this.ActiveManagerInstance);
            Dependencies.Container.RegisterInstance <ICopyStatusClientLookup>(this.CopyStatusLookup);
        }
Example #2
0
        // Token: 0x060013B9 RID: 5049 RVA: 0x000502BC File Offset: 0x0004E4BC
        public void Initialize()
        {
            if (Interlocked.CompareExchange(ref this.m_fInitialized, 1, 0) == 1)
            {
                return;
            }
            this.ADConfig = MonitoringADConfig.GetConfig(new AmServerName(this.m_serverName, true), Dependencies.ReplayAdObjectLookup, Dependencies.ReplayAdObjectLookupPartiallyConsistent, ADSessionFactory.CreateIgnoreInvalidRootOrgSession(true), ADSessionFactory.CreatePartiallyConsistentRootOrgSession(true), null);
            ActiveManager noncachingActiveManagerInstance             = ActiveManager.GetNoncachingActiveManagerInstance();
            AmMultiNodeCopyStatusFetcher amMultiNodeCopyStatusFetcher = new AmMultiNodeCopyStatusFetcher(this.ADConfig.AmServerNames, this.ADConfig.DatabaseMap, RpcGetDatabaseCopyStatusFlags2.None, noncachingActiveManagerInstance, false);
            Dictionary <Guid, Dictionary <AmServerName, CopyStatusClientCachedEntry> > status = amMultiNodeCopyStatusFetcher.GetStatus();
            CopyStatusClientLookupTable copyStatusClientLookupTable = new CopyStatusClientLookupTable();

            copyStatusClientLookupTable.UpdateCopyStatusCachedEntries(status);
            this.CopyStatusLookup = new CopyStatusClientLookup(copyStatusClientLookupTable, null, noncachingActiveManagerInstance);
        }