private void registerAsMembershipListener(Cache cache) { DistributionManager dm = ((InternalDistributedSystem) cache.getDistributedSystem()).getDistributionManager(); dm.addMembershipListener(this); }
protected void initialize() { subInit(); getDistributionManager().addMembershipListener(this.ml); }
this.dm.addMembershipListener(this);
/** * This method will initialize all the internal components for Management and Monitoring * * It will a)start an JMX connectorServer b) create a notification hub c)register the * ManagementFunction */ private SystemManagementService init() { try { this.localManager = new LocalManager(repo, system, this, cache); this.localManager.startManager(); this.listener = new ManagementMembershipListener(this); system.getDistributionManager().addMembershipListener(listener); isStarted = true; return this; } catch (CancelException e) { // Rethrow all CancelExceptions (fix for defect 46339) throw e; } catch (Exception e) { // Wrap all other exceptions as ManagementExceptions logger.error(e.getMessage(), e); throw new ManagementException(e); } }
@Override protected void preWait() { this.waiting = true; DistributionManager mgr = getDistributionManager(); this.statStart = mgr.getStats().startReplyWait(); // Note we do not use addMembershipListenerAndGetDistributionManagerIds // because this is the startup message and we do not yet have any // members in the dm's list. mgr.addMembershipListener(this); // Set activeMembers = mgr.addMembershipListenerAndGetDistributionManagerIds(this); // synchronized (this.members) { // for (int i = 0; i < getMembers().length; i++) { // if (!activeMembers.contains(getMembers()[i])) { // memberDeparted(getMembers()[i], false); // } // } // } } }
@Override protected void process(ClusterDistributionManager dm) { this.dm = dm; // Remove this node from the set of recipients if (this.farSiders != null) { this.farSiders.remove(dm.getId()); } if (this.processorId != 0) { TXLockService.createDTLS(this.dm.getSystem()); // fix bug 38843; no-op if already created synchronized (this) { // Handle potential origin departure this.dm.addMembershipListener(this); // Assume ACK mode, defer processing until we receive a // CommitProcess message if (logger.isDebugEnabled()) { final Object key = getTrackerKey(); logger.debug("Adding key:{} class{} to tracker list", key, key.getClass().getName()); } txTracker.add(this); } if (!this.dm.getDistributionManagerIds().contains(getSender())) { memberDeparted(this.dm, getSender(), false /* don't care */); } } else { basicProcess(); } }
dm.addMembershipListener(this.myMembershipListener); Set initialMembers = dm.getDistributionManagerIds(); this.myMembershipListener.addMembers(initialMembers);
/** * Creates instance of grantor for the lock service. * * @param dlock the lock service the grantor is authority for * @param vId unique id that the elder increments for each new grantor */ private DLockGrantor(DLockService dlock, long vId) { this.dm = dlock.getDistributionManager(); CancelCriterion stopper = this.dm.getCancelCriterion(); this.whileInitializing = new StoppableCountDownLatch(stopper, 1); this.untilDestroyed = new StoppableCountDownLatch(stopper, 1); this.dlock = dlock; this.destroyLock = new StoppableReentrantReadWriteLock(stopper); this.versionId.set(vId); this.dm.addMembershipListener(this.membershipListener); this.thread = new DLockGrantorThread(this, stopper); this.dlock.getStats().incGrantors(1); }
/** * adds the log as a membership listener to the given system and logs the view when members join */ public void monitorUse(InternalDistributedSystem system) { this.system = system; DistributionManager dmgr = system.getDistributionManager(); dmgr.addMembershipListener(this); MembershipManager mmgr = dmgr.getMembershipManager(); if (mmgr != null) { log("Log opened with new distributed system connection. " + system.getDM().getMembershipManager().getView()); } else { // membership manager not initialized? log("Log opened with new distributed system connection. Membership view not yet available in this VM."); } }
/** initializes a new version vector for this region */ private RegionVersionVector createVersionVector() { RegionVersionVector regionVersionVector = RegionVersionVector.create(getVersionMember(), this); if (this.getDataPolicy().withPersistence()) { // copy the versions that we have recovered from disk into // the version vector. RegionVersionVector diskVector = diskRegion.getRegionVersionVector(); regionVersionVector.recordVersions(diskVector.getCloneForTransmission()); } else if (!this.getDataPolicy().withStorage()) { // version vectors are currently only necessary in empty regions for // tracking canonical member IDs regionVersionVector.turnOffRecordingForEmptyRegion(); } if (serverRegionProxy != null) { regionVersionVector.setIsClientVector(); } cache.getDistributionManager().addMembershipListener(regionVersionVector); return regionVersionVector; }
this.dm.addMembershipListener(this.transactionManager);