@Experimental(value=SOURCE_SINK) public class JmsIO extends java.lang.Object
JmsIO source returns unbounded collection of JMS records as PCollection<JmsRecord<T>>
.
A JmsRecord
includes JMS headers and properties, along with the JMS message payload.
To configure a JMS source, you have to provide a ConnectionFactory
and the destination (queue or topic) where to consume. The following example
illustrates various options for configuring the source:
pipeline.apply(JmsIO.read()
.withConnectionFactory(myConnectionFactory)
.withQueue("my-queue")
// above two are required configuration, returns PCollection<JmsRecord<byte[]>>
// rest of the settings are optional
JmsIO sink supports writing text messages to a JMS destination on a broker.
To configure a JMS sink, you must specify a ConnectionFactory
and a
Destination
name.
For instance:
pipeline
.apply(...) // returns PCollection<String>
.apply(JmsIO.write()
.withConnectionFactory(myConnectionFactory)
.withQueue("my-queue")
Modifier and Type | Class and Description |
---|---|
static class |
JmsIO.Read
A
PTransform to read from a JMS destination. |
protected static class |
JmsIO.UnboundedJmsSource
An unbounded JMS source.
|
static class |
JmsIO.Write
A
PTransform to write to a JMS queue. |
Modifier and Type | Method and Description |
---|---|
static JmsIO.Read |
read() |
static JmsIO.Write |
write() |
public static JmsIO.Read read()
public static JmsIO.Write write()