Class JmsTransporter
java.lang.Object
services.moleculer.service.MoleculerComponent
services.moleculer.transporter.Transporter
services.moleculer.transporter.JmsTransporter
- All Implemented Interfaces:
MetricConstants, MoleculerLifecycle
JMS Transporter. The Java Message Service API is a Java Message Oriented
Middleware API for sending messages between two or more clients. It is an
implementation to handle the Producer-consumer problem. JMS is a part of the
Java Enterprise Edition. Sample of usage with Active MQ:
// https://mvnrepository.com/artifact/javax.jms/javax.jms-api
compile group: 'javax.jms', name: 'javax.jms-api', version: '2.0.1'
+ dependencies of the JMS driver.
Transporter t = new JmsTransporter(new ActiveMQConnectionFactory()); ServiceBroker broker = ServiceBroker.builder().transporter(t).build();Required dependency:
// https://mvnrepository.com/artifact/javax.jms/javax.jms-api
compile group: 'javax.jms', name: 'javax.jms-api', version: '2.0.1'
+ dependencies of the JMS driver.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intprotected jakarta.jms.TopicConnectionprotected Stringprotected intprotected jakarta.jms.TopicConnectionFactoryprotected Stringprotected intprotected jakarta.jms.TopicSessionprotected booleanprotected intprotected StringFields inherited from class Transporter
checkTimeoutTimer, counterTransporterPacketsReceivedBytes, counterTransporterPacketsReceivedTotal, counterTransporterPacketsSentBytes, counterTransporterPacketsSentTotal, debug, debugHeartbeats, disconnectChannel, discoverBroadcastChannel, discoverChannel, eventbus, eventChannel, executor, gaugeTransitConnected, heartbeatChannel, heartbeatInterval, heartbeatTimeout, heartBeatTimer, infoBroadcastChannel, infoChannel, infoScheduled, infoScheduledAt, instanceID, lastReceivedMessageAt, metrics, monitor, namespace, nodeID, nodes, offlineTimeout, PACKET_DISCONNECT, PACKET_DISCOVER, PACKET_EVENT, PACKET_HEARTBEAT, PACKET_INFO, PACKET_PING, PACKET_PONG, PACKET_REQUEST, PACKET_RESPONSE, pingChannel, pongChannel, preferHostname, prefix, protocolVersion, registry, requestChannel, responseChannel, scheduler, serializer, serviceInvoker, subscriptionTimeout, uidGenerator, usingJsonSerializerFields inherited from class MoleculerComponent
broker, logger, nameFields inherited from interface MetricConstants
MOLECULER_CACHER_CLEAN_TIME, MOLECULER_CACHER_CLEAN_TIME_DESC, MOLECULER_CACHER_CLEAN_TOTAL, MOLECULER_CACHER_CLEAN_TOTAL_DESC, MOLECULER_CACHER_DEL_TIME, MOLECULER_CACHER_DEL_TIME_DESC, MOLECULER_CACHER_DEL_TOTAL, MOLECULER_CACHER_DEL_TOTAL_DESC, MOLECULER_CACHER_EXPIRED_TOTAL, MOLECULER_CACHER_EXPIRED_TOTAL_DESC, MOLECULER_CACHER_FOUND_TOTAL, MOLECULER_CACHER_FOUND_TOTAL_DESC, MOLECULER_CACHER_GET_TIME, MOLECULER_CACHER_GET_TIME_DESC, MOLECULER_CACHER_GET_TOTAL, MOLECULER_CACHER_GET_TOTAL_DESC, MOLECULER_CACHER_SET_TIME, MOLECULER_CACHER_SET_TIME_DESC, MOLECULER_CACHER_SET_TOTAL, MOLECULER_CACHER_SET_TOTAL_DESC, MOLECULER_CIRCUIT_BREAKER_HALF_OPENED_ACTIVE, MOLECULER_CIRCUIT_BREAKER_HALF_OPENED_ACTIVE_DESC, MOLECULER_CIRCUIT_BREAKER_OPENED_ACTIVE, MOLECULER_CIRCUIT_BREAKER_OPENED_ACTIVE_DESC, MOLECULER_CIRCUIT_BREAKER_OPENED_TOTAL, MOLECULER_CIRCUIT_BREAKER_OPENED_TOTAL_DESC, MOLECULER_EVENT_BROADCAST_TOTAL, MOLECULER_EVENT_BROADCAST_TOTAL_DESC, MOLECULER_EVENT_BROADCASTLOCAL_TOTAL, MOLECULER_EVENT_BROADCASTLOCAL_TOTAL_DESC, MOLECULER_EVENT_EMIT_TOTAL, MOLECULER_EVENT_EMIT_TOTAL_DESC, MOLECULER_EVENT_RECEIVED_ACTIVE, MOLECULER_EVENT_RECEIVED_ACTIVE_DESC, MOLECULER_EVENT_RECEIVED_ERROR_TOTAL, MOLECULER_EVENT_RECEIVED_ERROR_TOTAL_DESC, MOLECULER_EVENT_RECEIVED_TIME, MOLECULER_EVENT_RECEIVED_TIME_DESC, MOLECULER_EVENT_RECEIVED_TOTAL, MOLECULER_EVENT_RECEIVED_TOTAL_DESC, MOLECULER_EXECUTOR, MOLECULER_REQUEST_ACTIVE, MOLECULER_REQUEST_ACTIVE_DESC, MOLECULER_REQUEST_ERROR_TOTAL, MOLECULER_REQUEST_ERROR_TOTAL_DESC, MOLECULER_REQUEST_LEVELS, MOLECULER_REQUEST_LEVELS_DESC, MOLECULER_REQUEST_RETRY_ATTEMPTS_TOTAL, MOLECULER_REQUEST_RETRY_ATTEMPTS_TOTAL_DESC, MOLECULER_REQUEST_TIME, MOLECULER_REQUEST_TIME_DESC, MOLECULER_REQUEST_TIMEOUT_TOTAL, MOLECULER_REQUEST_TIMEOUT_TOTAL_DESC, MOLECULER_REQUEST_TOTAL, MOLECULER_REQUEST_TOTAL_DESC, MOLECULER_SCHEDULER, MOLECULER_TRANSIT_CONNECTED, MOLECULER_TRANSIT_CONNECTED_DESC, MOLECULER_TRANSIT_ORPHAN_RESPONSE_TOTAL, MOLECULER_TRANSIT_ORPHAN_RESPONSE_TOTAL_DESC, MOLECULER_TRANSIT_REQUESTS_ACTIVE, MOLECULER_TRANSIT_REQUESTS_ACTIVE_DESC, MOLECULER_TRANSIT_STREAMS_RECEIVE_ACTIVE, MOLECULER_TRANSIT_STREAMS_RECEIVE_ACTIVE_DESC, MOLECULER_TRANSPORTER_PACKETS_RECEIVED_BYTES, MOLECULER_TRANSPORTER_PACKETS_RECEIVED_BYTES_DESC, MOLECULER_TRANSPORTER_PACKETS_RECEIVED_TOTAL, MOLECULER_TRANSPORTER_PACKETS_RECEIVED_TOTAL_DESC, MOLECULER_TRANSPORTER_PACKETS_SENT_BYTES, MOLECULER_TRANSPORTER_PACKETS_SENT_BYTES_DESC, MOLECULER_TRANSPORTER_PACKETS_SENT_TOTAL, MOLECULER_TRANSPORTER_PACKETS_SENT_TOTAL_DESC -
Constructor Summary
ConstructorsConstructorDescriptionJmsTransporter(jakarta.jms.TopicConnectionFactory connectionFactory) JmsTransporter(String connectionFactoryJndiName) JmsTransporter(String username, String password, jakarta.jms.TopicConnectionFactory connectionFactory) JmsTransporter(String username, String password, String connectionFactoryJndiName) -
Method Summary
Modifier and TypeMethodDescriptionvoidconnect()protected jakarta.jms.TopicPublishercreateOrGetPublisher(String channel) protected voidprotected voidAny I/O error occurred.intintintjakarta.jms.TopicConnectionFactoryintgetTtl()booleanvoidprotected voidvoidsetAcknowledgeMode(int acknowledgeMode) voidsetConnectionFactoryJndiName(String connectionFactoryJndiName) voidsetDeliveryMode(int deliveryMode) voidsetPassword(String password) voidsetPriority(int priority) voidsetTopicConnectionFactory(jakarta.jms.TopicConnectionFactory factory) voidsetTransacted(boolean transacted) voidsetTtl(int ttl) voidsetUsername(String username) voidstopped()Closes transporter.io.datatree.PromiseMethods inherited from class Transporter
broadcastInfoPacket, broadcastNodeConnected, broadcastNodeDisconnected, broadcastNodeUpdated, broadcastTransporterConnected, broadcastTransporterDisconnected, channel, checkTimeouts, connected, connected, createPingPacket, getAddress, getAllNodeIDs, getCpuUsage, getDescriptor, getHeartbeatInterval, getHeartbeatTimeout, getInstanceID, getLastHeartbeatTime, getNamespace, getOfflineTimeout, getPrefix, getSerializer, getSubscriptionTimeout, isDebug, isDebugHeartbeats, isOnline, isPreferHostname, processReceivedMessage, processReceivedMessage, publish, received, scheduleInfoPacket, sendClosePacket, sendDataPacket, sendDisconnectPacket, sendDiscoverPacket, sendErrorPacket, sendEventPacket, sendHeartbeatPacket, sendInfoPacket, sendPongPacket, sendRequestPacket, setDebug, setDebugHeartbeats, setHeartbeatInterval, setHeartbeatTimeout, setNamespace, setOfflineTimeout, setPreferHostname, setPrefix, setSerializer, setSubscriptionTimeout, started, subscribe, updateNodeInfoMethods inherited from class MoleculerComponent
getBroker, getLogger, getName
-
Field Details
-
username
-
password
-
transacted
protected boolean transacted -
acknowledgeMode
protected int acknowledgeMode -
deliveryMode
protected int deliveryMode -
priority
protected int priority -
ttl
protected int ttl -
connectionFactoryJndiName
-
factory
protected jakarta.jms.TopicConnectionFactory factory -
client
protected jakarta.jms.TopicConnection client -
session
protected jakarta.jms.TopicSession session -
publishers
-
subscribers
-
-
Constructor Details
-
JmsTransporter
public JmsTransporter() -
JmsTransporter
-
JmsTransporter
public JmsTransporter(jakarta.jms.TopicConnectionFactory connectionFactory) -
JmsTransporter
-
JmsTransporter
-
-
Method Details
-
connect
public void connect()- Specified by:
connectin classTransporter
-
disconnect
protected void disconnect() -
reconnect
-
error
Description copied from class:TransporterAny I/O error occurred. Implementation-specific error handling goes here (reconnection, etc.).- Overrides:
errorin classTransporter- Parameters:
cause- I/O error
-
stopped
public void stopped()Closes transporter.- Specified by:
stoppedin interfaceMoleculerLifecycle- Overrides:
stoppedin classTransporter
-
subscribe
- Specified by:
subscribein classTransporter
-
createOrGetPublisher
-
publish
- Specified by:
publishin classTransporter
-
getUsername
-
setUsername
-
getPassword
-
setPassword
-
getAcknowledgeMode
public int getAcknowledgeMode() -
setAcknowledgeMode
public void setAcknowledgeMode(int acknowledgeMode) -
getDeliveryMode
public int getDeliveryMode() -
setDeliveryMode
public void setDeliveryMode(int deliveryMode) -
getTopicConnectionFactory
public jakarta.jms.TopicConnectionFactory getTopicConnectionFactory() -
setTopicConnectionFactory
public void setTopicConnectionFactory(jakarta.jms.TopicConnectionFactory factory) -
isTransacted
public boolean isTransacted() -
setTransacted
public void setTransacted(boolean transacted) -
getPriority
public int getPriority() -
setPriority
public void setPriority(int priority) -
getTtl
public int getTtl() -
setTtl
public void setTtl(int ttl) -
getConnectionFactoryJndiName
-
setConnectionFactoryJndiName
-