IN
- public class RMQSink<IN> extends RichSinkFunction<IN>
SinkFunction.Context
Modifier and Type | Field and Description |
---|---|
protected com.rabbitmq.client.Channel |
channel |
protected com.rabbitmq.client.Connection |
connection |
protected String |
queueName |
protected SerializationSchema<IN> |
schema |
Constructor and Description |
---|
RMQSink(RMQConnectionConfig rmqConnectionConfig,
SerializationSchema<IN> schema,
RMQSinkPublishOptions<IN> publishOptions) |
RMQSink(RMQConnectionConfig rmqConnectionConfig,
SerializationSchema<IN> schema,
RMQSinkPublishOptions<IN> publishOptions,
SerializableReturnListener returnListener) |
RMQSink(RMQConnectionConfig rmqConnectionConfig,
String queueName,
SerializationSchema<IN> schema) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Tear-down method for the user code.
|
void |
invoke(IN value)
Called when new data arrives to the sink, and forwards it to RMQ.
|
void |
open(Configuration config)
Initialization method for the function.
|
void |
setLogFailuresOnly(boolean logFailuresOnly)
Defines whether the producer should fail on errors, or only log them.
|
protected com.rabbitmq.client.Connection |
setupConnection()
Initializes the connection to RMQ using the default connection factory from
setupConnectionFactory() . |
protected com.rabbitmq.client.ConnectionFactory |
setupConnectionFactory()
Initializes the connection to RMQ with a default connection factory.
|
protected void |
setupQueue()
Sets up the queue.
|
getIterationRuntimeContext, getRuntimeContext, setRuntimeContext
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
finish, invoke, writeWatermark
protected transient com.rabbitmq.client.Connection connection
protected transient com.rabbitmq.client.Channel channel
protected SerializationSchema<IN> schema
@PublicEvolving public RMQSink(RMQConnectionConfig rmqConnectionConfig, String queueName, SerializationSchema<IN> schema)
rmqConnectionConfig
- The RabbitMQ connection configuration RMQConnectionConfig
.queueName
- The queue to publish messages to.schema
- A SerializationSchema
for turning the Java objects received into bytes@PublicEvolving public RMQSink(RMQConnectionConfig rmqConnectionConfig, SerializationSchema<IN> schema, RMQSinkPublishOptions<IN> publishOptions)
rmqConnectionConfig
- The RabbitMQ connection configuration RMQConnectionConfig
.schema
- A SerializationSchema
for turning the Java objects received into bytespublishOptions
- A RMQSinkPublishOptions
for providing message's routing key
and/or properties In this case the computeMandatoy or computeImmediate MUST return false
otherwise an IllegalStateException is raised during runtime.@PublicEvolving public RMQSink(RMQConnectionConfig rmqConnectionConfig, SerializationSchema<IN> schema, RMQSinkPublishOptions<IN> publishOptions, SerializableReturnListener returnListener)
rmqConnectionConfig
- The RabbitMQ connection configuration RMQConnectionConfig
.schema
- A SerializationSchema
for turning the Java objects received into bytespublishOptions
- A RMQSinkPublishOptions
for providing message's routing key
and/or propertiesreturnListener
- A SerializableReturnListener implementation object to handle returned
message eventprotected void setupQueue() throws IOException
IOException
public void setLogFailuresOnly(boolean logFailuresOnly)
logFailuresOnly
- The flag to indicate logging-only on exceptions.protected com.rabbitmq.client.ConnectionFactory setupConnectionFactory() throws Exception
ConnectionFactory
.Exception
protected com.rabbitmq.client.Connection setupConnection() throws Exception
setupConnectionFactory()
. The user may override this method to setup and configure their
own Connection
.Exception
public void open(Configuration config) throws Exception
RichFunction
The configuration object passed to the function can be used for configuration and initialization. The configuration contains all parameters that were configured on the function in the program composition.
public class MyFilter extends RichFilterFunction<String> {
private String searchString;
public void open(Configuration parameters) {
this.searchString = parameters.getString("foo");
}
public boolean filter(String value) {
return value.equals(searchString);
}
}
By default, this method does nothing.
open
in interface RichFunction
open
in class AbstractRichFunction
config
- The configuration containing the parameters attached to the contract.Exception
- Implementations may forward exceptions, which are caught by the runtime.
When the runtime catches an exception, it aborts the task and lets the fail-over logic
decide whether to retry the task execution.Configuration
public void invoke(IN value)
value
- The incoming datapublic void close()
RichFunction
This method can be used for clean up work.
close
in interface RichFunction
close
in class AbstractRichFunction
Copyright © 2014–2023 The Apache Software Foundation. All rights reserved.