camel-mllp-kafka-connector sink configuration

Connector Description: Communicate with external systems using the MLLP protocol.

When using camel-mllp-kafka-connector as sink make sure to use the following Maven dependency to have support for the connector:

<dependency>
  <groupId>org.apache.camel.kafkaconnector</groupId>
  <artifactId>camel-mllp-kafka-connector</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel Kafka connector version -->
</dependency>

To use this Sink connector in Kafka connect you’ll need to set the following connector.class

connector.class=org.apache.camel.kafkaconnector.mllp.CamelMllpSinkConnector

The camel-mllp sink connector supports 22 options, which are listed below.

Name Description Default Required Priority

camel.sink.path.hostname

Hostname or IP for connection for the TCP connection. The default value is null, which means any local IP address

null

true

HIGH

camel.sink.path.port

Port number for the TCP connection

null

true

HIGH

camel.sink.endpoint.autoAck

Enable/Disable the automatic generation of a MLLP Acknowledgement MLLP Consumers only

true

false

MEDIUM

camel.sink.endpoint.hl7Headers

Enable/Disable the automatic generation of message headers from the HL7 Message MLLP Consumers only

true

false

MEDIUM

camel.sink.endpoint.requireEndOfData

Enable/Disable strict compliance to the MLLP standard. The MLLP standard specifies START_OF_BLOCKhl7 payloadEND_OF_BLOCKEND_OF_DATA, however, some systems do not send the final END_OF_DATA byte. This setting controls whether or not the final END_OF_DATA byte is required or optional.

true

false

MEDIUM

camel.sink.endpoint.stringPayload

Enable/Disable converting the payload to a String. If enabled, HL7 Payloads received from external systems will be validated converted to a String. If the charsetName property is set, that character set will be used for the conversion. If the charsetName property is not set, the value of MSH-18 will be used to determine th appropriate character set. If MSH-18 is not set, then the default ISO-8859-1 character set will be use.

true

false

MEDIUM

camel.sink.endpoint.validatePayload

Enable/Disable the validation of HL7 Payloads If enabled, HL7 Payloads received from external systems will be validated (see Hl7Util.generateInvalidPayloadExceptionMessage for details on the validation). If and invalid payload is detected, a MllpInvalidMessageException (for consumers) or a MllpInvalidAcknowledgementException will be thrown.

false

false

MEDIUM

camel.sink.endpoint.lazyStartProducer

Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel’s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.

false

false

MEDIUM

camel.sink.endpoint.charsetName

Set the CamelCharsetName property on the exchange

null

false

MEDIUM

camel.sink.endpoint.keepAlive

Enable/disable the SO_KEEPALIVE socket option.

"true"

false

MEDIUM

camel.sink.endpoint.receiveBufferSize

Sets the SO_RCVBUF option to the specified value (in bytes)

"8192"

false

MEDIUM

camel.sink.endpoint.sendBufferSize

Sets the SO_SNDBUF option to the specified value (in bytes)

"8192"

false

MEDIUM

camel.sink.endpoint.tcpNoDelay

Enable/disable the TCP_NODELAY socket option.

"true"

false

MEDIUM

camel.sink.endpoint.connectTimeout

Timeout (in milliseconds) for establishing for a TCP connection TCP Client only

30000

false

MEDIUM

camel.sink.endpoint.idleTimeout

The approximate idle time allowed before the Client TCP Connection will be reset. A null value or a value less than or equal to zero will disable the idle timeout.

null

false

MEDIUM

camel.sink.endpoint.readTimeout

The SO_TIMEOUT value (in milliseconds) used after the start of an MLLP frame has been received

5000

false

MEDIUM

camel.sink.endpoint.receiveTimeout

The SO_TIMEOUT value (in milliseconds) used when waiting for the start of an MLLP frame

15000

false

MEDIUM

camel.component.mllp.lazyStartProducer

Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel’s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.

false

false

MEDIUM

camel.component.mllp.autowiredEnabled

Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.

true

false

MEDIUM

camel.component.mllp.defaultCharset

Set the default character set to use for byte to/from String conversions.

"ISO-8859-1"

false

MEDIUM

camel.component.mllp.logPhi

Set the component to log PHI data.

"true"

false

MEDIUM

camel.component.mllp.logPhiMaxBytes

Set the maximum number of bytes of PHI that will be logged in a log entry.

"5120"

false

MEDIUM

The camel-mllp sink connector has no converters out of the box.

The camel-mllp sink connector has no transforms out of the box.

The camel-mllp sink connector has no aggregation strategies out of the box.