@Override public void run() { try { if (replicatedPolicy.isCheckForLiveServer() && isNodeIdUsed()) { //set for when we failback if (logger.isTraceEnabled()) { logger.tracef("@@@ setting up replicatedPolicy.getReplicaPolicy for back start, replicaPolicy::%s, isBackup=%s, server=%s", replicatedPolicy.getReplicaPolicy(), replicatedPolicy.isBackup(), activeMQServer); } replicatedPolicy.getReplicaPolicy().setReplicatedPolicy(replicatedPolicy); activeMQServer.setHAPolicy(replicatedPolicy.getReplicaPolicy()); return; } logger.trace("@@@ did not do it now"); activeMQServer.initialisePart1(false); activeMQServer.getClusterManager().getQuorumManager().registerQuorumHandler(new ServerConnectVoteHandler(activeMQServer)); activeMQServer.initialisePart2(false); activeMQServer.completeActivation(); if (activeMQServer.getIdentity() != null) { ActiveMQServerLogger.LOGGER.serverIsLive(activeMQServer.getIdentity()); } else { ActiveMQServerLogger.LOGGER.serverIsLive(); } } catch (Exception e) { ActiveMQServerLogger.LOGGER.initializationError(e); activeMQServer.callActivationFailureListeners(e); } }
@Test public void ReplicatedTest() throws Exception { Configuration configuration = createConfiguration("replicated-hapolicy-config.xml"); ActiveMQServerImpl server = new ActiveMQServerImpl(configuration); try { server.start(); Activation activation = server.getActivation(); assertTrue(activation instanceof SharedNothingLiveActivation); HAPolicy haPolicy = server.getHAPolicy(); assertTrue(haPolicy instanceof ReplicatedPolicy); ReplicatedPolicy replicatedPolicy = (ReplicatedPolicy) haPolicy; assertEquals(replicatedPolicy.getGroupName(), "purple"); assertTrue(replicatedPolicy.isCheckForLiveServer()); assertEquals(replicatedPolicy.getClusterName(), "abcdefg"); assertEquals(replicatedPolicy.getInitialReplicationSyncTimeout(), 9876); assertEquals(replicatedPolicy.getRetryReplicationWait(), 12345); } finally { server.stop(); } }
@Test public void colocatedTestNullBackup() throws Exception { Configuration configuration = createConfiguration("colocated-hapolicy-config-null-backup.xml"); ActiveMQServerImpl server = new ActiveMQServerImpl(configuration); try { server.start(); Activation activation = server.getActivation(); assertTrue(activation instanceof ColocatedActivation); HAPolicy haPolicy = server.getHAPolicy(); assertTrue(haPolicy instanceof ColocatedPolicy); ColocatedPolicy colocatedPolicy = (ColocatedPolicy) haPolicy; ReplicatedPolicy livePolicy = (ReplicatedPolicy) colocatedPolicy.getLivePolicy(); assertNotNull(livePolicy); assertEquals(livePolicy.getGroupName(), "purple"); assertTrue(livePolicy.isCheckForLiveServer()); assertEquals(livePolicy.getClusterName(), "abcdefg"); ReplicaPolicy backupPolicy = (ReplicaPolicy) colocatedPolicy.getBackupPolicy(); assertNotNull(backupPolicy); } finally { server.stop(); } }
@Test public void colocatedTest() throws Exception { Configuration configuration = createConfiguration("colocated-hapolicy-config.xml"); ActiveMQServerImpl server = new ActiveMQServerImpl(configuration); try { server.start(); Activation activation = server.getActivation(); assertTrue(activation instanceof ColocatedActivation); HAPolicy haPolicy = server.getHAPolicy(); assertTrue(haPolicy instanceof ColocatedPolicy); ColocatedPolicy colocatedPolicy = (ColocatedPolicy) haPolicy; ReplicatedPolicy livePolicy = (ReplicatedPolicy) colocatedPolicy.getLivePolicy(); assertNotNull(livePolicy); assertEquals(livePolicy.getGroupName(), "purple"); assertTrue(livePolicy.isCheckForLiveServer()); assertEquals(livePolicy.getClusterName(), "abcdefg"); ReplicaPolicy backupPolicy = (ReplicaPolicy) colocatedPolicy.getBackupPolicy(); assertNotNull(backupPolicy); assertEquals(backupPolicy.getGroupName(), "tiddles"); assertEquals(backupPolicy.getMaxSavedReplicatedJournalsSize(), 22); assertEquals(backupPolicy.getClusterName(), "33rrrrr"); assertFalse(backupPolicy.isRestartBackup()); } finally { server.stop(); } }