/** * Closes all topic publishers. */ public void closeAllTopicPublishers() { for(int ii = 0; ii < topicPublisherList.size(); ii++) { TopicPublisher publisher = (TopicPublisher)topicPublisherList.get(ii); try { publisher.close(); } catch(JMSException exc) { } } }
/** * Closes all topic publishers. */ public void closeAllTopicPublishers() { for(int ii = 0; ii < topicPublisherList.size(); ii++) { TopicPublisher publisher = (TopicPublisher)topicPublisherList.get(ii); try { publisher.close(); } catch(JMSException exc) { } } }
public void close() throws JMSException { _sender.close(); _session.close(); } }
@Destroy public void destroy() throws JMSException { topicPublisher.close(); }
public void close() { if (isRunning.get()) { synchronized (sessionMonitor) { isRunning.set(false); if (publisher != null) { try { publisher.close(); } catch (JMSException ex) { logger.warn(String.format("Got error while trying to close a producer for topic %s", topic), ex); } publisher = null; } if (session != null) { try { session.close(); } catch (JMSException ex) { logger.warn(String.format("Got error while trying to close a session for topic %s", topic), ex); } session = null; } } } }
private static void closeResources(TopicConnection pConn, TopicSession pSession, TopicPublisher pPublisher) throws JMSException { if (pPublisher != null) { pPublisher.close(); } if (pSession != null) { pSession.close(); } if (pConn != null) { pConn.close(); } }
/** * Close a JMS {@link MessageProducer}. * @param messageProducer JMS Message Producer that needs to be closed. * @throws JMSException if an error occurs while closing the producer. */ public void closeProducer(MessageProducer messageProducer) throws JMSException { if (messageProducer != null) { if (logger.isDebugEnabled()) { logger.debug("Closing a JMS Message Producer of: " + this.connectionFactoryString); } if ((JMSConstants.JMS_SPEC_VERSION_1_1.equals(jmsSpec)) || (JMSConstants.JMS_SPEC_VERSION_2_0 .equals(jmsSpec))) { messageProducer.close(); } else { if (JMSConstants.JMSDestinationType.QUEUE.equals(this.destinationType)) { ((QueueSender) messageProducer).close(); } else { ((TopicPublisher) messageProducer).close(); } } } }
/** * Close a JMS {@link MessageProducer}. * @param messageProducer JMS Message Producer that needs to be closed. * @throws JMSException if an error occurs while closing the producer. */ public void closeProducer(MessageProducer messageProducer) throws JMSException { if (messageProducer != null) { if (logger.isDebugEnabled()) { logger.debug("Closing a JMS Message Producer of: " + this.connectionFactoryString); } if ((JMSConstants.JMS_SPEC_VERSION_1_1.equals(jmsSpec)) || (JMSConstants.JMS_SPEC_VERSION_2_0 .equals(jmsSpec))) { messageProducer.close(); } else { if (JMSConstants.JMSDestinationType.QUEUE.equals(this.destinationType)) { ((QueueSender) messageProducer).close(); } else { ((TopicPublisher) messageProducer).close(); } } } }
protected void stopService () { log.info ("Stoping JMS cache invalidation bridge"); try { if (this.propagationMode == JMSCacheInvalidationBridgeMBean.IN_OUT_BRIDGE_PROPAGATION || this.propagationMode == JMSCacheInvalidationBridgeMBean.IN_ONLY_BRIDGE_PROPAGATION) { subscriber.close(); } if (this.propagationMode == JMSCacheInvalidationBridgeMBean.IN_OUT_BRIDGE_PROPAGATION || this.propagationMode == JMSCacheInvalidationBridgeMBean.OUT_ONLY_BRIDGE_PROPAGATION) { this.publishingAuthorized = false; pub.close(); } conn.stop(); session.close(); conn.close(); } catch (Exception ex) { log.warn("Failed to stop JMS resources associated with the JMS bridge: ", ex); } }
protected synchronized void closeConnection() { try { if( null != m_publisher ) m_publisher.close(); if( null != m_session ) m_session.close(); if( null != m_connection ) m_connection.close(); } catch( Exception e ) { getErrorHandler().error( "Error closing connection", e, null ); } m_publisher = null; m_session = null; m_connection = null; } }
topicPublisher.close(); } catch (JMSException e) { log.error("Error occurred while closing topic publisher for topic : " + topicName);
publisher.close();
publisher.close();
/** * Providers may be doing all sorts of exotic things and need to be able to clean up on dispose. * * @throws CacheException */ public void dispose() throws CacheException { LOG.fine("JMSCacheManagerPeerProvider for CacheManager " + cacheManager.getName() + " being disposed."); try { cachePeer.dispose(); topicPublisher.close(); if (listenToTopic) { topicSubscriber.close(); replicationTopicConnection.stop(); } topicPublisherSession.close(); replicationTopicConnection.close(); getQueueRequestReceiver.close(); getQueueSession.close(); getQueueConnection.close(); } catch (JMSException e) { LOG.severe(e.getMessage()); throw new CacheException(e.getMessage(), e); } }
/** * Providers may be doing all sorts of exotic things and need to be able to clean up on dispose. * * @throws CacheException */ public void dispose() throws CacheException { LOG.fine("JMSCacheManagerPeerProvider for CacheManager " + cacheManager.getName() + " being disposed."); try { cachePeer.dispose(); topicPublisher.close(); if (listenToTopic) { topicSubscriber.close(); replicationTopicConnection.stop(); } topicPublisherSession.close(); replicationTopicConnection.close(); getQueueRequestReceiver.close(); getQueueSession.close(); getQueueConnection.close(); } catch (JMSException e) { LOG.severe(e.getMessage()); throw new CacheException(e.getMessage(), e); } }
@Test(timeout = 60000) public void testSendAndReceiveOnTopic() throws Exception { Connection connection = createConnection("myClientId"); try { TopicSession session = (TopicSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Topic topic = session.createTopic(getTopicName()); TopicSubscriber consumer = session.createSubscriber(topic); TopicPublisher producer = session.createPublisher(topic); TextMessage message = session.createTextMessage("test-message"); producer.send(message); producer.close(); connection.start(); message = (TextMessage) consumer.receive(1000); assertNotNull(message); assertNotNull(message.getText()); assertEquals("test-message", message.getText()); } finally { connection.close(); } }
@Test(timeout = 60000) public void testSendWithMultipleReceiversOnTopic() throws Exception { Connection connection = createConnection(); try { TopicSession session = (TopicSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Topic topic = session.createTopic(getTopicName()); TopicSubscriber consumer1 = session.createSubscriber(topic); TopicSubscriber consumer2 = session.createSubscriber(topic); TopicPublisher producer = session.createPublisher(topic); TextMessage message = session.createTextMessage("test-message"); producer.send(message); producer.close(); connection.start(); message = (TextMessage) consumer1.receive(1000); assertNotNull(message); assertNotNull(message.getText()); assertEquals("test-message", message.getText()); message = (TextMessage) consumer2.receive(1000); assertNotNull(message); assertNotNull(message.getText()); assertEquals("test-message", message.getText()); } finally { connection.close(); } }
topicPublisher.close(); topicSession.close(); topicConnection.stop();
publisher.close(); session.close(); con.close();
producer.send(message); producer.close(); connection.start();