本文整理汇总了Java中org.apache.activemq.artemis.api.core.client.ClientSession.stop方法的典型用法代码示例。如果您正苦于以下问题:Java ClientSession.stop方法的具体用法?Java ClientSession.stop怎么用?Java ClientSession.stop使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.activemq.artemis.api.core.client.ClientSession
的用法示例。
在下文中一共展示了ClientSession.stop方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: checkUserReceiveNoSend
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
private void checkUserReceiveNoSend(final String queue,
final ClientSession connection,
final ClientSession sendingConn) throws Exception {
connection.start();
try {
ClientProducer prod = connection.createProducer(queue);
ClientMessage m = connection.createMessage(false);
try {
prod.send(m);
Assert.fail("should throw exception");
} catch (ActiveMQException e) {
// pass
}
prod = sendingConn.createProducer(queue);
prod.send(m);
ClientConsumer con = connection.createConsumer(queue);
ClientMessage rec = con.receive(1000);
Assert.assertNotNull(rec);
rec.acknowledge();
} finally {
connection.stop();
}
}
示例2: checkUserSendAndReceive
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
private void checkUserSendAndReceive(final String genericQueueName,
final ClientSession connection) throws Exception {
connection.start();
try {
ClientProducer prod = connection.createProducer(genericQueueName);
ClientConsumer con = connection.createConsumer(genericQueueName);
ClientMessage m = connection.createMessage(false);
prod.send(m);
ClientMessage rec = con.receive(1000);
Assert.assertNotNull(rec);
rec.acknowledge();
} finally {
connection.stop();
}
}
示例3: testStop
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
@Test
public void testStop() throws Exception {
cf = createSessionFactory(locator);
ClientSession clientSession = cf.createSession(false, true, true);
clientSession.createQueue(queueName, queueName, false);
clientSession.start();
clientSession.stop();
clientSession.close();
}
示例4: testAsyncConsumerRollback
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
@Test
public void testAsyncConsumerRollback() throws Exception {
ActiveMQServer server = createServer(false);
server.start();
ServerLocator locator = createInVMNonHALocator().setBlockOnAcknowledge(true).setAckBatchSize(0);
ClientSessionFactory cf = createSessionFactory(locator);
ClientSession sendSession = cf.createSession(false, true, true);
final ClientSession session = cf.createSession(false, true, false);
sendSession.createQueue(addressA, queueA, false);
ClientProducer cp = sendSession.createProducer(addressA);
ClientConsumer cc = session.createConsumer(queueA);
int numMessages = 100;
for (int i = 0; i < numMessages; i++) {
cp.send(sendSession.createMessage(false));
}
CountDownLatch latch = new CountDownLatch(numMessages);
session.start();
cc.setMessageHandler(new ackHandler(session, latch));
Assert.assertTrue(latch.await(5, TimeUnit.SECONDS));
Queue q = (Queue) server.getPostOffice().getBinding(queueA).getBindable();
Assert.assertEquals(numMessages, q.getDeliveringCount());
Assert.assertEquals(numMessages, getMessageCount(q));
session.stop();
session.rollback();
Assert.assertEquals(0, q.getDeliveringCount());
Assert.assertEquals(numMessages, getMessageCount(q));
latch = new CountDownLatch(numMessages);
cc.setMessageHandler(new ackHandler(session, latch));
session.start();
Assert.assertTrue(latch.await(5, TimeUnit.SECONDS));
sendSession.close();
session.close();
cf.close();
}
示例5: testStopStartMultipleConsumers
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
@Test
public void testStopStartMultipleConsumers() throws Exception {
locator.setConsumerWindowSize(getMessageEncodeSize(QUEUE) * 33);
ClientSessionFactory sf = createSessionFactory(locator);
final ClientSession session = sf.createSession(false, true, true);
session.createQueue(QUEUE, QUEUE, null, false);
ClientProducer producer = session.createProducer(QUEUE);
final int numMessages = 100;
for (int i = 0; i < numMessages; i++) {
ClientMessage message = createTextMessage(session, "m" + i);
message.putIntProperty(new SimpleString("i"), i);
producer.send(message);
}
ClientConsumer consumer = session.createConsumer(QUEUE);
ClientConsumer consumer2 = session.createConsumer(QUEUE);
ClientConsumer consumer3 = session.createConsumer(QUEUE);
session.start();
ClientMessage cm = consumer.receive(5000);
Assert.assertNotNull(cm);
cm.acknowledge();
cm = consumer2.receive(5000);
Assert.assertNotNull(cm);
cm.acknowledge();
cm = consumer3.receive(5000);
Assert.assertNotNull(cm);
cm.acknowledge();
session.stop();
cm = consumer.receiveImmediate();
Assert.assertNull(cm);
cm = consumer2.receiveImmediate();
Assert.assertNull(cm);
cm = consumer3.receiveImmediate();
Assert.assertNull(cm);
session.start();
cm = consumer.receive(5000);
Assert.assertNotNull(cm);
cm = consumer2.receive(5000);
Assert.assertNotNull(cm);
cm = consumer3.receive(5000);
Assert.assertNotNull(cm);
session.close();
}
示例6: testDedeliveryMessageOnPersistent
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
protected void testDedeliveryMessageOnPersistent(final boolean strictUpdate) throws Exception {
setUp(strictUpdate);
ClientSession session = factory.createSession(false, false, false);
RedeliveryConsumerTest.log.info("created");
ClientProducer prod = session.createProducer(ADDRESS);
prod.send(createTextMessage(session, "Hello"));
session.commit();
session.close();
session = factory.createSession(false, false, false);
session.start();
ClientConsumer consumer = session.createConsumer(ADDRESS);
ClientMessage msg = consumer.receive(1000);
Assert.assertEquals(1, msg.getDeliveryCount());
session.stop();
// if strictUpdate == true, this will simulate a crash, where the server is stopped without closing/rolling back
// the session, but the delivery count still persisted, so the final delivery count is 2 too.
if (!strictUpdate) {
// If non Strict, at least rollback/cancel should still update the delivery-counts
session.rollback(true);
session.close();
}
server.stop();
// once the server is stopped, we close the session
// to clean up its client resources
session.close();
server.start();
factory = createSessionFactory(locator);
session = factory.createSession(false, true, false);
session.start();
consumer = session.createConsumer(ADDRESS);
msg = consumer.receive(1000);
Assert.assertNotNull(msg);
Assert.assertEquals(strictUpdate ? 2 : 2, msg.getDeliveryCount());
session.close();
}
示例7: doTestN
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
protected void doTestN(final ClientSessionFactory sf, final int threadNum) throws Exception {
ClientSession sessCreate = sf.createSession(false, true, true);
sessCreate.createQueue(MultiThreadRandomReattachTestBase.ADDRESS, new SimpleString(threadNum + MultiThreadRandomReattachTestBase.ADDRESS.toString()), (SimpleString) null, false);
ClientSession sess = sf.createSession(false, true, true);
sess.addMetaData("data", RandomUtil.randomString());
sess.stop();
sess.start();
sess.stop();
ClientConsumer consumer = sess.createConsumer(new SimpleString(threadNum + MultiThreadRandomReattachTestBase.ADDRESS.toString()));
ClientProducer producer = sess.createProducer(MultiThreadRandomReattachTestBase.ADDRESS);
ClientMessage message = sess.createMessage(ActiveMQTextMessage.TYPE, false, 0, System.currentTimeMillis(), (byte) 1);
producer.send(message);
sess.start();
ClientMessage message2 = consumer.receive(MultiThreadRandomReattachTestBase.RECEIVE_TIMEOUT);
Assert.assertNotNull(message2);
message2.acknowledge();
sess.stop();
sess.start();
sess.close();
sessCreate.deleteQueue(new SimpleString(threadNum + MultiThreadRandomReattachTestBase.ADDRESS.toString()));
sessCreate.close();
}
示例8: doTestN
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
protected void doTestN(final ClientSessionFactory sf) throws Exception {
ClientSession sessCreate = sf.createSession(false, true, true);
sessCreate.createQueue(RandomReattachTest.ADDRESS, new SimpleString(RandomReattachTest.ADDRESS.toString()), null, false);
ClientSession sess = sf.createSession(false, true, true);
sess.stop();
sess.start();
sess.stop();
ClientConsumer consumer = sess.createConsumer(new SimpleString(RandomReattachTest.ADDRESS.toString()));
ClientProducer producer = sess.createProducer(RandomReattachTest.ADDRESS);
ClientMessage message = sess.createMessage(ActiveMQTextMessage.TYPE, false, 0, System.currentTimeMillis(), (byte) 1);
producer.send(message);
sess.start();
ClientMessage message2 = consumer.receive(RandomReattachTest.RECEIVE_TIMEOUT);
Assert.assertNotNull(message2);
message2.acknowledge();
sess.stop();
sess.start();
sess.close();
sessCreate.deleteQueue(new SimpleString(RandomReattachTest.ADDRESS.toString()));
sessCreate.close();
}
示例9: testTwoBindingsTwoStartedConsumers
import org.apache.activemq.artemis.api.core.client.ClientSession; //导入方法依赖的package包/类
@Test
public void testTwoBindingsTwoStartedConsumers() throws Exception {
// there are two bindings.. one is ACKed, the other is not, the server is restarted
// The other binding is acked... The file must be deleted
ActiveMQServer server = createServer(true, isNetty(), storeType);
server.start();
SimpleString[] queue = new SimpleString[]{new SimpleString("queue1"), new SimpleString("queue2")};
ClientSessionFactory sf = addSessionFactory(createSessionFactory(locator));
ClientSession session = sf.createSession(null, null, false, true, true, false, 0);
session.createQueue(ADDRESS, queue[0], null, true);
session.createQueue(ADDRESS, queue[1], null, true);
int numberOfBytes = 400000;
Message clientFile = createLargeClientMessageStreaming(session, numberOfBytes);
ClientProducer producer = session.createProducer(ADDRESS);
session.start();
producer.send(clientFile);
producer.close();
ClientConsumer consumer = session.createConsumer(queue[1]);
ClientMessage msg = consumer.receive(LargeMessageTest.RECEIVE_WAIT_TIME);
msg.getBodyBuffer().readByte();
Assert.assertNull(consumer.receiveImmediate());
Assert.assertNotNull(msg);
msg.acknowledge();
consumer.close();
log.debug("Stopping");
session.stop();
ClientConsumer consumer1 = session.createConsumer(queue[0]);
session.start();
msg = consumer1.receive(LargeMessageTest.RECEIVE_WAIT_TIME);
Assert.assertNotNull(msg);
msg.acknowledge();
consumer1.close();
session.commit();
session.close();
validateNoFilesOnLargeDir();
}