/** * @param ignite Ignite. * @param grp Cluster group. * @param async Async message send flag. * @throws Exception If fail. */ private void registerListenerAndSendMessages(Ignite ignite, ClusterGroup grp, boolean async) throws Exception { int messages = MSGS; LATCH = new CountDownLatch(grp.nodes().size() * messages); UUID opId = registerListener(grp); try { for (int i = 0; i < messages; i++) sendMessage(ignite, grp, value(i), async); assertTrue(LATCH.await(10, TimeUnit.SECONDS)); } finally { ignite.message().stopRemoteListen(opId); } }
messaging.stopRemoteListen(reader.readUuid());
/** * @param ignite Ignite. * @param grp Cluster group. * @throws Exception If fail. */ private void registerListenerAndSendOrderedMessages(Ignite ignite, ClusterGroup grp) throws Exception { int messages = MSGS; LATCH = new CountDownLatch(grp.nodes().size() * messages); UUID opId = ignite.message(grp).remoteListen(MESSAGE_TOPIC, new OrderedMessageListener()); try { for (int i=0; i < messages; i++) ignite.message(grp).sendOrdered(MESSAGE_TOPIC, value(i), 2000); assertTrue(LATCH.await(10, TimeUnit.SECONDS)); } finally { ignite.message().stopRemoteListen(opId); } }
messaging.stopRemoteListen(reader.readUuid());
/** * * @throws Exception If fail. */ private void collectionMessage() throws Exception { Ignite ignite = grid(SERVER_NODE_IDX); ClusterGroup grp = gridCount() > 1 ? ignite.cluster().forRemotes() : ignite.cluster().forLocal(); assert !grp.nodes().isEmpty(); int messages = MSGS; LATCH = new CountDownLatch(grp.nodes().size() * messages); UUID opId = ignite.message(grp).remoteListen(MESSAGE_TOPIC, new MessageListener()); try { List<Object> msgs = new ArrayList<>(); for (int i = 0; i < messages; i++) msgs.add(value(i)); ignite.message(grp).send(MESSAGE_TOPIC, msgs); assertTrue(LATCH.await(10, TimeUnit.SECONDS)); } finally { ignite.message().stopRemoteListen(opId); } }
/** * Single server test. * * @param async Async message send flag. * @throws Exception If failed. */ private void localServerInternal(boolean async) throws Exception { int messages = MSGS; Ignite ignite = grid(SERVER_NODE_IDX); LATCH = new CountDownLatch(messages); ClusterGroup grp = grid(SERVER_NODE_IDX).cluster().forLocal(); UUID opId = registerListener(grp); try { for (int i = 0; i < messages; i++) sendMessage(ignite, grp, value(i), async); assertTrue(LATCH.await(10, TimeUnit.SECONDS)); } finally { ignite.message().stopRemoteListen(opId); } }
stopFrom.message().stopRemoteListen(opId);
/** * @param masterName Node name * @throws Exception If failed. */ private void testDataExchange(String masterName) throws Exception { startServerNodes(2); startClientNodes(2); checkNodes(2, 2); IgniteMessaging msg = grid(masterName).message(); UUID id = msg.remoteListen(null, new MessageListener()); try { msgLatch = new CountDownLatch(2); msg.send(null, "Message 1"); await(msgLatch); startServerNodes(1); startClientNodes(1); checkNodes(3, 3); msgLatch = new CountDownLatch(3); msg.send(null, "Message 2"); await(msgLatch); } finally { msg.stopRemoteListen(id); } }
assertEquals(1, msgCnt3.get()); ignite2.message().stopRemoteListen(id2); assertEquals(2, msgCnt3.get()); ignite2.message().stopRemoteListen(id2); // Try remove one more time. ignite2.message().stopRemoteListen(id1); ignite2.message().stopRemoteListen(id3);
/** * @throws Exception If failed. */ @Test public void testDataExchangeFromServer2() throws Exception { startServerNodes(2); IgniteMessaging msg = grid("server-1").message(); UUID id = msg.remoteListen(null, new MessageListener()); try { startClientNodes(1); assertEquals(G.ignite("server-0").cluster().localNode().id(), ((TcpDiscoveryNode) G.ignite("client-0").cluster().localNode()).clientRouterNodeId()); checkNodes(2, 1); msgLatch = new CountDownLatch(3); msg.send(null, "Message"); await(msgLatch); } finally { msg.stopRemoteListen(id); } }