private JmsTransportProtocol getConsumerSettings() { JmsTransportProtocol protocol = new JmsTransportProtocol(); protocol.setPort(BackendConfig.INSTANCE.getJmsPort()); protocol.setBrokerHostname("tcp://" +BackendConfig.INSTANCE.getJmsHost()); protocol.setTopicDefinition(new SimpleTopicDefinition(topic)); return protocol; }
@Override public String toString() { return getBrokerHostname() + ":" + getPort(); } }
/** * Defines that a pipeline element (data processor or data sink) supports processing messages arriving from a * JMS broker. * @return The {@link org.streampipes.model.grounding.JmsTransportProtocol}. */ public static JmsTransportProtocol jms() { return new JmsTransportProtocol(); }
@Override public void connect(JmsTransportProtocol protocolSettings, InternalEventProcessor<byte[]> eventProcessor) throws SpRuntimeException { String url = protocolSettings.getBrokerHostname() + ":" + protocolSettings.getPort(); try { this.eventProcessor = eventProcessor; session = startJmsConnection(url).createSession(false, Session.AUTO_ACKNOWLEDGE); consumer = session.createConsumer(session.createTopic(protocolSettings.getTopicDefinition().getActualTopicName())); initListener(); this.connected = true; } catch (JMSException e) { throw new SpRuntimeException("could not connect to activemq broker"); } }
public JmsTransportProtocol(JmsTransportProtocol other) { super(other); this.port = other.getPort(); }
/** * Defines the transport protocol Kafka used by a data stream at runtime. * @param jmsHost The hostname of any JMS broker * @param jmsPort The port of any JMS broker * @param topic The topic identifier * @return The {@link org.streampipes.model.grounding.KafkaTransportProtocol} containing URL and topic where data * arrives. */ public static JmsTransportProtocol jms(String jmsHost, Integer jmsPort, String topic) { return new JmsTransportProtocol(jmsHost, jmsPort, topic); } }
@Override public void connect(JmsTransportProtocol protocolSettings, InternalEventProcessor<byte[]> eventProcessor) throws SpRuntimeException { String url = protocolSettings.getBrokerHostname() + ":" + protocolSettings.getPort(); try { this.eventProcessor = eventProcessor; session = startJmsConnection(url).createSession(false, Session.AUTO_ACKNOWLEDGE); consumer = session.createConsumer(session.createTopic(protocolSettings.getTopicDefinition().getActualTopicName())); initListener(); this.connected = true; } catch (JMSException e) { throw new SpRuntimeException("could not connect to activemq broker"); } }
public ActiveMQPublisher(String url, String topic) { JmsTransportProtocol protocol = new JmsTransportProtocol(); protocol.setBrokerHostname(url.substring(0, url.lastIndexOf(":"))); protocol.setPort(Integer.parseInt(url.substring(url.lastIndexOf(":")+1, url.length()))); protocol.setTopicDefinition(new SimpleTopicDefinition(topic)); try { connect(protocol); } catch (SpRuntimeException e) { e.printStackTrace(); } }
public static List<TransportProtocol> standardProtocols() { List<TransportProtocol> protocols = new ArrayList<>(); protocols.add(new JmsTransportProtocol()); protocols.add(new KafkaTransportProtocol()); return protocols; }
@Override public void connect(JmsTransportProtocol protocolSettings) throws SpRuntimeException { String url = protocolSettings.getBrokerHostname() +":" +protocolSettings.getPort(); ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url); this.session = connection .createSession(false, Session.AUTO_ACKNOWLEDGE); this.producer = session.createProducer(session.createTopic(protocolSettings.getTopicDefinition().getActualTopicName())); this.producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); this.connection.start();
public ActiveMQPublisher(String url, String topic) { JmsTransportProtocol protocol = new JmsTransportProtocol(); protocol.setBrokerHostname(url.substring(0, url.lastIndexOf(":"))); protocol.setPort(Integer.parseInt(url.substring(url.lastIndexOf(":")+1, url.length()))); protocol.setTopicDefinition(new SimpleTopicDefinition(topic)); try { connect(protocol); } catch (SpRuntimeException e) { e.printStackTrace(); } }
public TransportProtocol protocol(TransportProtocol protocol) { if (protocol instanceof KafkaTransportProtocol) { return new KafkaTransportProtocol((KafkaTransportProtocol) protocol); } else { return new JmsTransportProtocol((JmsTransportProtocol) protocol); } }
@Override public void connect(JmsTransportProtocol protocolSettings) throws SpRuntimeException { String url = protocolSettings.getBrokerHostname() +":" +protocolSettings.getPort(); ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url); this.session = connection .createSession(false, Session.AUTO_ACKNOWLEDGE); this.producer = session.createProducer(session.createTopic(protocolSettings.getTopicDefinition().getActualTopicName())); this.producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); this.connection.start();
protected JmsTransportProtocol getJmsProtocol(SpDataStream stream) { return new JmsTransportProtocol((JmsTransportProtocol) protocol(stream)); }
protected JmsTransportProtocol getJmsProtocol(SpDataStream stream) { return new JmsTransportProtocol((JmsTransportProtocol) protocol(stream)); }
public TransportProtocol getPreferredProtocol() { if (source instanceof SpDataStream) { return ((SpDataStream) source) .getEventGrounding() .getTransportProtocol(); } else { if (supportsProtocol(KafkaTransportProtocol.class)) { return kafkaTopic(); } else if (supportsProtocol(JmsTransportProtocol.class)) { return new JmsTransportProtocol(BackendConfig.INSTANCE.getJmsHost(), BackendConfig.INSTANCE.getJmsPort(), outputTopic); } } return kafkaTopic(); }
public TransportProtocol getPreferredProtocol() { if (source instanceof SpDataStream) { return ((SpDataStream) source) .getEventGrounding() .getTransportProtocol(); } else { if (supportsProtocol(KafkaTransportProtocol.class)) { return kafkaTopic(); } else if (supportsProtocol(JmsTransportProtocol.class)) { return new JmsTransportProtocol(BackendConfig.INSTANCE.getJmsHost(), BackendConfig.INSTANCE.getJmsPort(), outputTopic); } } return kafkaTopic(); }