This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new 28670ae Regen
28670ae is described below
commit 28670aede0443e2bab369ca3d67ccaed0f7f09eb
Author: Claus Ibsen <[email protected]>
AuthorDate: Mon Oct 25 07:06:52 2021 +0200
Regen
---
.../camel/springboot/catalog/components/mllp.json | 34 +-
.../camel-mllp-starter/src/main/docs/mllp.json | 176 ++++++++++-
.../springboot/MllpComponentConfiguration.java | 348 ++++++++++++++++++++-
.../mllp/springboot/MllpComponentConverter.java | 4 +-
.../modules/spring-boot/examples/json/mllp.json | 176 ++++++++++-
5 files changed, 707 insertions(+), 31 deletions(-)
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/mllp.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/mllp.json
index 684fbc5..b17b7e9 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/mllp.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/mllp.json
@@ -22,18 +22,42 @@
"lenientProperties": false
},
"componentProperties": {
- "bridgeErrorHandler": { "kind": "property", "displayName": "Bridge Error
Handler", "group": "consumer", "label": "consumer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "Allows for bridging the
consumer to the Camel routing Error Handler, which mean any exceptions occurred
while the consumer is trying to pickup incoming messages, or the likes, will
now be processed as a me [...]
+ "autoAck": { "kind": "property", "displayName": "Auto Ack", "group":
"common", "label": "", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable the automatic generation of a
MLLP Acknowledgement MLLP Consumers only" },
+ "charsetName": { "kind": "property", "displayName": "Charset Name",
"group": "common", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Sets the default charset to use" },
+ "configuration": { "kind": "property", "displayName": "Configuration",
"group": "common", "label": "", "required": false, "type": "object",
"javaType": "org.apache.camel.component.mllp.MllpConfiguration", "deprecated":
false, "autowired": false, "secret": false, "description": "Sets the default
configuration to use when creating MLLP endpoints." },
+ "hl7Headers": { "kind": "property", "displayName": "Hl7 Headers", "group":
"common", "label": "", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable the automatic generation of
message headers from the HL7 Message MLLP Consumers only" },
+ "requireEndOfData": { "kind": "property", "displayName": "Require End Of
Data", "group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable strict compliance to the MLLP
standard. The MLLP standard specifies START_OF_BLOCKhl7 pay [...]
+ "stringPayload": { "kind": "property", "displayName": "String Payload",
"group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable converting the payload to a
String. If enabled, HL7 Payloads received from external systems will [...]
+ "validatePayload": { "kind": "property", "displayName": "Validate
Payload", "group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable the validation of HL7 Payloads
If enabled, HL7 Payloads received from external systems will [...]
+ "acceptTimeout": { "kind": "property", "displayName": "Accept Timeout",
"group": "consumer", "label": "advanced,consumer", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 60000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Timeout (in milliseconds) while waiting for a
TCP connection TCP Server Only" },
+ "backlog": { "kind": "property", "displayName": "Backlog", "group":
"consumer", "label": "advanced,consumer", "required": false, "type": "integer",
"javaType": "java.lang.Integer", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "5", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "The maximum queue length for incoming
connection indications (a request to connect) is set to the [...]
+ "bindRetryInterval": { "kind": "property", "displayName": "Bind Retry
Interval", "group": "consumer", "label": "advanced,consumer", "required":
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": 5000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "TCP Server Only - The number of milliseconds
to wait between bind attempts" },
+ "bindTimeout": { "kind": "property", "displayName": "Bind Timeout",
"group": "consumer", "label": "advanced,consumer", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 30000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "TCP Server Only - The number of milliseconds
to retry binding to a server port" },
+ "bridgeErrorHandler": { "kind": "property", "displayName": "Bridge Error
Handler", "group": "consumer", "label": "consumer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Allows for bridging the consumer to the Camel
routing Error Handler, which mean any exceptio [...]
+ "lenientBind": { "kind": "property", "displayName": "Lenient Bind",
"group": "consumer", "label": "advanced,consumer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "TCP Server Only - Allow the endpoint to start
before the TCP ServerSocket is bound. In some envir [...]
+ "maxConcurrentConsumers": { "kind": "property", "displayName": "Max
Concurrent Consumers", "group": "consumer", "label": "advanced,consumer",
"required": false, "type": "integer", "javaType": "int", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": 5, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "The maximum number of concurrent MLLP Consumer
connections that will be allowed. I [...]
+ "reuseAddress": { "kind": "property", "displayName": "Reuse Address",
"group": "consumer", "label": "advanced,consumer", "required": false, "type":
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "false", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/disable the SO_REUSEADDR socket
option." },
+ "exchangePattern": { "kind": "property", "displayName": "Exchange
Pattern", "group": "consumer (advanced)", "label": "consumer,advanced",
"required": false, "type": "object", "javaType":
"org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut",
"InOptionalOut" ], "deprecated": false, "autowired": false, "secret": false,
"defaultValue": "InOut", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Sets [...]
+ "connectTimeout": { "kind": "property", "displayName": "Connect Timeout",
"group": "producer", "label": "advanced,producer", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 30000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Timeout (in milliseconds) for establishing for
a TCP connection TCP Client only" },
+ "idleTimeoutStrategy": { "kind": "property", "displayName": "Idle Timeout
Strategy", "group": "producer", "label": "advanced,producer", "required":
false, "type": "object", "javaType":
"org.apache.camel.component.mllp.MllpIdleTimeoutStrategy", "enum": [ "RESET",
"CLOSE" ], "deprecated": false, "autowired": false, "secret": false,
"defaultValue": "RESET", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "d [...]
+ "keepAlive": { "kind": "property", "displayName": "Keep Alive", "group":
"producer", "label": "advanced,producer", "required": false, "type": "boolean",
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "true", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/disable the SO_KEEPALIVE socket
option." },
"lazyStartProducer": { "kind": "property", "displayName": "Lazy Start
Producer", "group": "producer", "label": "producer", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "description": "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 star [...]
+ "tcpNoDelay": { "kind": "property", "displayName": "Tcp No Delay",
"group": "producer", "label": "advanced,producer", "required": false, "type":
"boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "true", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/disable the TCP_NODELAY socket
option." },
"autowiredEnabled": { "kind": "property", "displayName": "Autowired
Enabled", "group": "advanced", "label": "advanced", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "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 t [...]
- "defaultCharset": { "kind": "property", "displayName": "Default Charset",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "java.nio.charset.Charset", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "ISO-8859-1", "description": "Set the
default character set to use for byte to\/from String conversions." },
- "logPhi": { "kind": "property", "displayName": "Log Phi", "group":
"advanced", "label": "advanced", "required": false, "type": "boolean",
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "true", "description": "Set the component to
log PHI data." },
- "logPhiMaxBytes": { "kind": "property", "displayName": "Log Phi Max
Bytes", "group": "advanced", "label": "advanced", "required": false, "type":
"integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "5120", "description": "Set the maximum
number of bytes of PHI that will be logged in a log entry." }
+ "defaultCharset": { "kind": "property", "displayName": "Default Charset",
"group": "advanced", "label": "advanced", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "ISO-8859-1", "description": "Set the default
character set to use for byte to\/from String conversions." },
+ "logPhi": { "kind": "property", "displayName": "Log Phi", "group":
"advanced", "label": "advanced", "required": false, "type": "boolean",
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "true", "description": "Whether to log PHI" },
+ "logPhiMaxBytes": { "kind": "property", "displayName": "Log Phi Max
Bytes", "group": "advanced", "label": "advanced", "required": false, "type":
"integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "5120", "description": "Set the maximum
number of bytes of PHI that will be logged in a log entry." },
+ "readTimeout": { "kind": "property", "displayName": "Read Timeout",
"group": "advanced", "label": "advanced", "required": false, "type": "integer",
"javaType": "int", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": 5000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "The SO_TIMEOUT value (in milliseconds) used
after the start of an MLLP frame has been received" },
+ "receiveBufferSize": { "kind": "property", "displayName": "Receive Buffer
Size", "group": "advanced", "label": "advanced", "required": false, "type":
"integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired":
false, "secret": false, "defaultValue": "8192", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Sets the SO_RCVBUF option to the specified
value (in bytes)" },
+ "receiveTimeout": { "kind": "property", "displayName": "Receive Timeout",
"group": "advanced", "label": "advanced", "required": false, "type": "integer",
"javaType": "int", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": 15000, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "The SO_TIMEOUT value (in milliseconds) used
when waiting for the start of an MLLP frame" },
+ "sendBufferSize": { "kind": "property", "displayName": "Send Buffer Size",
"group": "advanced", "label": "advanced", "required": false, "type": "integer",
"javaType": "java.lang.Integer", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": "8192", "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Sets the SO_SNDBUF option to the specified
value (in bytes)" },
+ "idleTimeout": { "kind": "property", "displayName": "Idle Timeout",
"group": "tcp", "label": "advanced,tcp", "required": false, "type": "integer",
"javaType": "java.lang.Integer", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "The approximate idle time allowed before the
Client TCP Connection will be reset. A null value or a value less than or e
[...]
},
"properties": {
"hostname": { "kind": "path", "displayName": "Hostname", "group":
"common", "label": "", "required": true, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Hostname or IP for connection for the
TCP connection. The default value is null, which means any local IP address" },
"port": { "kind": "path", "displayName": "Port", "group": "common",
"label": "", "required": true, "type": "integer", "javaType": "int",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Port number for the TCP connection" },
"autoAck": { "kind": "parameter", "displayName": "Auto Ack", "group":
"common", "label": "", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable the automatic generation of a
MLLP Acknowledgement MLLP Consumers only" },
- "charsetName": { "kind": "parameter", "displayName": "Charset Name",
"group": "common", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Set the CamelCharsetName property on the
exchange" },
+ "charsetName": { "kind": "parameter", "displayName": "Charset Name",
"group": "common", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Sets the default charset to use" },
"hl7Headers": { "kind": "parameter", "displayName": "Hl7 Headers",
"group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable the automatic generation of
message headers from the HL7 Message MLLP Consumers only" },
"requireEndOfData": { "kind": "parameter", "displayName": "Require End Of
Data", "group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable strict compliance to the MLLP
standard. The MLLP standard specifies START_OF_BLOCKhl7 pa [...]
"stringPayload": { "kind": "parameter", "displayName": "String Payload",
"group": "common", "label": "", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "autowired": false, "secret":
false, "defaultValue": true, "configurationClass":
"org.apache.camel.component.mllp.MllpConfiguration", "configurationField":
"configuration", "description": "Enable\/Disable converting the payload to a
String. If enabled, HL7 Payloads received from external systems will [...]
diff --git a/components-starter/camel-mllp-starter/src/main/docs/mllp.json
b/components-starter/camel-mllp-starter/src/main/docs/mllp.json
index 9a87d87..4821de9 100644
--- a/components-starter/camel-mllp-starter/src/main/docs/mllp.json
+++ b/components-starter/camel-mllp-starter/src/main/docs/mllp.json
@@ -14,6 +14,20 @@
],
"properties": [
{
+ "name": "camel.component.mllp.accept-timeout",
+ "type": "java.lang.Integer",
+ "description": "Timeout (in milliseconds) while waiting for a TCP
connection TCP Server Only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 60000
+ },
+ {
+ "name": "camel.component.mllp.auto-ack",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/Disable the automatic generation of a MLLP
Acknowledgement MLLP Consumers only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
"name": "camel.component.mllp.autowired-enabled",
"type": "java.lang.Boolean",
"description": "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.",
@@ -21,11 +35,51 @@
"defaultValue": true
},
{
+ "name": "camel.component.mllp.backlog",
+ "type": "java.lang.Integer",
+ "description": "The maximum queue length for incoming connection
indications (a request to connect) is set to the backlog parameter. If a
connection indication arrives when the queue is full, the connection is
refused.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5
+ },
+ {
+ "name": "camel.component.mllp.bind-retry-interval",
+ "type": "java.lang.Integer",
+ "description": "TCP Server Only - The number of milliseconds to wait
between bind attempts",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5000
+ },
+ {
+ "name": "camel.component.mllp.bind-timeout",
+ "type": "java.lang.Integer",
+ "description": "TCP Server Only - The number of milliseconds to retry
binding to a server port",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 30000
+ },
+ {
"name": "camel.component.mllp.bridge-error-handler",
"type": "java.lang.Boolean",
- "description": "Allows for bridging the consumer to the Camel routing
Error Handler, which mean any exceptions occurred while the consumer is trying
to pickup incoming messages, or the likes, will now be processed as a message
and handled by the routing Error Handler. By default the consumer will use the
org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be
logged at WARN or ERROR level and ignored.",
+ "description": "Allows for bridging the consumer to the Camel routing
Error Handler, which mean any exceptions occurred while the consumer is trying
to receive incoming messages, or the likes, will now be processed as a message
and handled by the routing Error Handler. If disabled, the consumer will use
the org.apache.camel.spi.ExceptionHandler to deal with exceptions by logging
them at WARN or ERROR level and ignored.",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
- "defaultValue": false
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.charset-name",
+ "type": "java.lang.String",
+ "description": "Sets the default charset to use",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.configuration",
+ "type": "org.apache.camel.component.mllp.MllpConfiguration",
+ "description": "Sets the default configuration to use when creating MLLP
endpoints. The option is a org.apache.camel.component.mllp.MllpConfiguration
type.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.connect-timeout",
+ "type": "java.lang.Integer",
+ "description": "Timeout (in milliseconds) for establishing for a TCP
connection TCP Client only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 30000
},
{
"name": "camel.component.mllp.customizer.enabled",
@@ -34,9 +88,10 @@
},
{
"name": "camel.component.mllp.default-charset",
- "type": "java.nio.charset.Charset",
- "description": "Set the default character set to use for byte to\/from
String conversions. The option is a java.nio.charset.Charset type.",
- "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ "type": "java.lang.String",
+ "description": "Set the default character set to use for byte to\/from
String conversions.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": "ISO-8859-1"
},
{
"name": "camel.component.mllp.enabled",
@@ -45,6 +100,38 @@
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
},
{
+ "name": "camel.component.mllp.exchange-pattern",
+ "type": "org.apache.camel.ExchangePattern",
+ "description": "Sets the exchange pattern when the consumer creates an
exchange.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.hl7-headers",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/Disable the automatic generation of message
headers from the HL7 Message MLLP Consumers only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.idle-timeout",
+ "type": "java.lang.Integer",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.idle-timeout-strategy",
+ "type": "org.apache.camel.component.mllp.MllpIdleTimeoutStrategy",
+ "description": "decide what action to take when idle timeout occurs.
Possible values are : RESET: set SO_LINGER to 0 and reset the socket CLOSE:
close the socket gracefully default is RESET.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.keep-alive",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the SO_KEEPALIVE socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
"name": "camel.component.mllp.lazy-start-producer",
"type": "java.lang.Boolean",
"description": "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 [...]
@@ -52,9 +139,16 @@
"defaultValue": false
},
{
+ "name": "camel.component.mllp.lenient-bind",
+ "type": "java.lang.Boolean",
+ "description": "TCP Server Only - Allow the endpoint to start before the
TCP ServerSocket is bound. In some environments, it may be desirable to allow
the endpoint to start before the TCP ServerSocket is bound.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
+ },
+ {
"name": "camel.component.mllp.log-phi",
"type": "java.lang.Boolean",
- "description": "Set the component to log PHI data.",
+ "description": "Whether to log PHI",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
"defaultValue": true
},
@@ -64,6 +158,76 @@
"description": "Set the maximum number of bytes of PHI that will be
logged in a log entry.",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
"defaultValue": 5120
+ },
+ {
+ "name": "camel.component.mllp.max-concurrent-consumers",
+ "type": "java.lang.Integer",
+ "description": "The maximum number of concurrent MLLP Consumer
connections that will be allowed. If a new connection is received and the
maximum is number are already established, the new connection will be reset
immediately.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5
+ },
+ {
+ "name": "camel.component.mllp.read-timeout",
+ "type": "java.lang.Integer",
+ "description": "The SO_TIMEOUT value (in milliseconds) used after the
start of an MLLP frame has been received",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5000
+ },
+ {
+ "name": "camel.component.mllp.receive-buffer-size",
+ "type": "java.lang.Integer",
+ "description": "Sets the SO_RCVBUF option to the specified value (in
bytes)",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 8192
+ },
+ {
+ "name": "camel.component.mllp.receive-timeout",
+ "type": "java.lang.Integer",
+ "description": "The SO_TIMEOUT value (in milliseconds) used when waiting
for the start of an MLLP frame",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 15000
+ },
+ {
+ "name": "camel.component.mllp.require-end-of-data",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.reuse-address",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the SO_REUSEADDR socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
+ },
+ {
+ "name": "camel.component.mllp.send-buffer-size",
+ "type": "java.lang.Integer",
+ "description": "Sets the SO_SNDBUF option to the specified value (in
bytes)",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 8192
+ },
+ {
+ "name": "camel.component.mllp.string-payload",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.tcp-no-delay",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the TCP_NODELAY socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.validate-payload",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
}
],
"hints": []
diff --git
a/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConfiguration.java
b/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConfiguration.java
index 506fa02..7083419 100644
---
a/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConfiguration.java
+++
b/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConfiguration.java
@@ -16,8 +16,11 @@
*/
package org.apache.camel.component.mllp.springboot;
-import java.nio.charset.Charset;
import javax.annotation.Generated;
+import org.apache.camel.ExchangePattern;
+import org.apache.camel.component.mllp.MllpComponent;
+import org.apache.camel.component.mllp.MllpConfiguration;
+import org.apache.camel.component.mllp.MllpIdleTimeoutStrategy;
import org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon;
import org.springframework.boot.context.properties.ConfigurationProperties;
@@ -38,14 +41,115 @@ public class MllpComponentConfiguration
*/
private Boolean enabled;
/**
+ * Enable/Disable the automatic generation of a MLLP Acknowledgement MLLP
+ * Consumers only
+ */
+ private Boolean autoAck = true;
+ /**
+ * Sets the default charset to use
+ */
+ private String charsetName;
+ /**
+ * Sets the default configuration to use when creating MLLP endpoints. The
+ * option is a org.apache.camel.component.mllp.MllpConfiguration type.
+ */
+ private MllpConfiguration configuration;
+ /**
+ * Enable/Disable the automatic generation of message headers from the HL7
+ * Message MLLP Consumers only
+ */
+ private Boolean hl7Headers = true;
+ /**
+ * 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.
+ */
+ private Boolean requireEndOfData = true;
+ /**
+ * 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.
+ */
+ private Boolean stringPayload = true;
+ /**
+ * 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.
+ */
+ private Boolean validatePayload = false;
+ /**
+ * Timeout (in milliseconds) while waiting for a TCP connection TCP Server
+ * Only
+ */
+ private Integer acceptTimeout = 60000;
+ /**
+ * The maximum queue length for incoming connection indications (a request
+ * to connect) is set to the backlog parameter. If a connection indication
+ * arrives when the queue is full, the connection is refused.
+ */
+ private Integer backlog = 5;
+ /**
+ * TCP Server Only - The number of milliseconds to wait between bind
+ * attempts
+ */
+ private Integer bindRetryInterval = 5000;
+ /**
+ * TCP Server Only - The number of milliseconds to retry binding to a
server
+ * port
+ */
+ private Integer bindTimeout = 30000;
+ /**
* Allows for bridging the consumer to the Camel routing Error Handler,
- * which mean any exceptions occurred while the consumer is trying to
pickup
- * incoming messages, or the likes, will now be processed as a message and
- * handled by the routing Error Handler. By default the consumer will use
- * the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that
- * will be logged at WARN or ERROR level and ignored.
+ * which mean any exceptions occurred while the consumer is trying to
+ * receive incoming messages, or the likes, will now be processed as a
+ * message and handled by the routing Error Handler. If disabled, the
+ * consumer will use the org.apache.camel.spi.ExceptionHandler to deal with
+ * exceptions by logging them at WARN or ERROR level and ignored.
+ */
+ private Boolean bridgeErrorHandler = true;
+ /**
+ * TCP Server Only - Allow the endpoint to start before the TCP
ServerSocket
+ * is bound. In some environments, it may be desirable to allow the
endpoint
+ * to start before the TCP ServerSocket is bound.
+ */
+ private Boolean lenientBind = false;
+ /**
+ * The maximum number of concurrent MLLP Consumer connections that will be
+ * allowed. If a new connection is received and the maximum is number are
+ * already established, the new connection will be reset immediately.
+ */
+ private Integer maxConcurrentConsumers = 5;
+ /**
+ * Enable/disable the SO_REUSEADDR socket option.
+ */
+ private Boolean reuseAddress = false;
+ /**
+ * Sets the exchange pattern when the consumer creates an exchange.
+ */
+ private ExchangePattern exchangePattern = ExchangePattern.InOut;
+ /**
+ * Timeout (in milliseconds) for establishing for a TCP connection TCP
+ * Client only
+ */
+ private Integer connectTimeout = 30000;
+ /**
+ * decide what action to take when idle timeout occurs. Possible values are
+ * : RESET: set SO_LINGER to 0 and reset the socket CLOSE: close the socket
+ * gracefully default is RESET.
+ */
+ private MllpIdleTimeoutStrategy idleTimeoutStrategy =
MllpIdleTimeoutStrategy.RESET;
+ /**
+ * Enable/disable the SO_KEEPALIVE socket option.
*/
- private Boolean bridgeErrorHandler = false;
+ private Boolean keepAlive = true;
/**
* Whether the producer should be started lazy (on the first message). By
* starting lazy you can use this to allow CamelContext and routes to
@@ -58,6 +162,10 @@ public class MllpComponentConfiguration
*/
private Boolean lazyStartProducer = false;
/**
+ * Enable/disable the TCP_NODELAY socket option.
+ */
+ private Boolean tcpNoDelay = true;
+ /**
* 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
@@ -68,11 +176,10 @@ public class MllpComponentConfiguration
private Boolean autowiredEnabled = true;
/**
* Set the default character set to use for byte to/from String
conversions.
- * The option is a java.nio.charset.Charset type.
*/
- private Charset defaultCharset;
+ private String defaultCharset = "ISO-8859-1";
/**
- * Set the component to log PHI data.
+ * Whether to log PHI
*/
private Boolean logPhi = true;
/**
@@ -80,6 +187,118 @@ public class MllpComponentConfiguration
* entry.
*/
private Integer logPhiMaxBytes = 5120;
+ /**
+ * The SO_TIMEOUT value (in milliseconds) used after the start of an MLLP
+ * frame has been received
+ */
+ private Integer readTimeout = 5000;
+ /**
+ * Sets the SO_RCVBUF option to the specified value (in bytes)
+ */
+ private Integer receiveBufferSize = 8192;
+ /**
+ * The SO_TIMEOUT value (in milliseconds) used when waiting for the start
of
+ * an MLLP frame
+ */
+ private Integer receiveTimeout = 15000;
+ /**
+ * Sets the SO_SNDBUF option to the specified value (in bytes)
+ */
+ private Integer sendBufferSize = 8192;
+ /**
+ * 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.
+ */
+ private Integer idleTimeout;
+
+ public Boolean getAutoAck() {
+ return autoAck;
+ }
+
+ public void setAutoAck(Boolean autoAck) {
+ this.autoAck = autoAck;
+ }
+
+ public String getCharsetName() {
+ return charsetName;
+ }
+
+ public void setCharsetName(String charsetName) {
+ this.charsetName = charsetName;
+ }
+
+ public MllpConfiguration getConfiguration() {
+ return configuration;
+ }
+
+ public void setConfiguration(MllpConfiguration configuration) {
+ this.configuration = configuration;
+ }
+
+ public Boolean getHl7Headers() {
+ return hl7Headers;
+ }
+
+ public void setHl7Headers(Boolean hl7Headers) {
+ this.hl7Headers = hl7Headers;
+ }
+
+ public Boolean getRequireEndOfData() {
+ return requireEndOfData;
+ }
+
+ public void setRequireEndOfData(Boolean requireEndOfData) {
+ this.requireEndOfData = requireEndOfData;
+ }
+
+ public Boolean getStringPayload() {
+ return stringPayload;
+ }
+
+ public void setStringPayload(Boolean stringPayload) {
+ this.stringPayload = stringPayload;
+ }
+
+ public Boolean getValidatePayload() {
+ return validatePayload;
+ }
+
+ public void setValidatePayload(Boolean validatePayload) {
+ this.validatePayload = validatePayload;
+ }
+
+ public Integer getAcceptTimeout() {
+ return acceptTimeout;
+ }
+
+ public void setAcceptTimeout(Integer acceptTimeout) {
+ this.acceptTimeout = acceptTimeout;
+ }
+
+ public Integer getBacklog() {
+ return backlog;
+ }
+
+ public void setBacklog(Integer backlog) {
+ this.backlog = backlog;
+ }
+
+ public Integer getBindRetryInterval() {
+ return bindRetryInterval;
+ }
+
+ public void setBindRetryInterval(Integer bindRetryInterval) {
+ this.bindRetryInterval = bindRetryInterval;
+ }
+
+ public Integer getBindTimeout() {
+ return bindTimeout;
+ }
+
+ public void setBindTimeout(Integer bindTimeout) {
+ this.bindTimeout = bindTimeout;
+ }
public Boolean getBridgeErrorHandler() {
return bridgeErrorHandler;
@@ -89,6 +308,63 @@ public class MllpComponentConfiguration
this.bridgeErrorHandler = bridgeErrorHandler;
}
+ public Boolean getLenientBind() {
+ return lenientBind;
+ }
+
+ public void setLenientBind(Boolean lenientBind) {
+ this.lenientBind = lenientBind;
+ }
+
+ public Integer getMaxConcurrentConsumers() {
+ return maxConcurrentConsumers;
+ }
+
+ public void setMaxConcurrentConsumers(Integer maxConcurrentConsumers) {
+ this.maxConcurrentConsumers = maxConcurrentConsumers;
+ }
+
+ public Boolean getReuseAddress() {
+ return reuseAddress;
+ }
+
+ public void setReuseAddress(Boolean reuseAddress) {
+ this.reuseAddress = reuseAddress;
+ }
+
+ public ExchangePattern getExchangePattern() {
+ return exchangePattern;
+ }
+
+ public void setExchangePattern(ExchangePattern exchangePattern) {
+ this.exchangePattern = exchangePattern;
+ }
+
+ public Integer getConnectTimeout() {
+ return connectTimeout;
+ }
+
+ public void setConnectTimeout(Integer connectTimeout) {
+ this.connectTimeout = connectTimeout;
+ }
+
+ public MllpIdleTimeoutStrategy getIdleTimeoutStrategy() {
+ return idleTimeoutStrategy;
+ }
+
+ public void setIdleTimeoutStrategy(
+ MllpIdleTimeoutStrategy idleTimeoutStrategy) {
+ this.idleTimeoutStrategy = idleTimeoutStrategy;
+ }
+
+ public Boolean getKeepAlive() {
+ return keepAlive;
+ }
+
+ public void setKeepAlive(Boolean keepAlive) {
+ this.keepAlive = keepAlive;
+ }
+
public Boolean getLazyStartProducer() {
return lazyStartProducer;
}
@@ -97,6 +373,14 @@ public class MllpComponentConfiguration
this.lazyStartProducer = lazyStartProducer;
}
+ public Boolean getTcpNoDelay() {
+ return tcpNoDelay;
+ }
+
+ public void setTcpNoDelay(Boolean tcpNoDelay) {
+ this.tcpNoDelay = tcpNoDelay;
+ }
+
public Boolean getAutowiredEnabled() {
return autowiredEnabled;
}
@@ -105,11 +389,11 @@ public class MllpComponentConfiguration
this.autowiredEnabled = autowiredEnabled;
}
- public Charset getDefaultCharset() {
+ public String getDefaultCharset() {
return defaultCharset;
}
- public void setDefaultCharset(Charset defaultCharset) {
+ public void setDefaultCharset(String defaultCharset) {
this.defaultCharset = defaultCharset;
}
@@ -128,4 +412,44 @@ public class MllpComponentConfiguration
public void setLogPhiMaxBytes(Integer logPhiMaxBytes) {
this.logPhiMaxBytes = logPhiMaxBytes;
}
+
+ public Integer getReadTimeout() {
+ return readTimeout;
+ }
+
+ public void setReadTimeout(Integer readTimeout) {
+ this.readTimeout = readTimeout;
+ }
+
+ public Integer getReceiveBufferSize() {
+ return receiveBufferSize;
+ }
+
+ public void setReceiveBufferSize(Integer receiveBufferSize) {
+ this.receiveBufferSize = receiveBufferSize;
+ }
+
+ public Integer getReceiveTimeout() {
+ return receiveTimeout;
+ }
+
+ public void setReceiveTimeout(Integer receiveTimeout) {
+ this.receiveTimeout = receiveTimeout;
+ }
+
+ public Integer getSendBufferSize() {
+ return sendBufferSize;
+ }
+
+ public void setSendBufferSize(Integer sendBufferSize) {
+ this.sendBufferSize = sendBufferSize;
+ }
+
+ public Integer getIdleTimeout() {
+ return idleTimeout;
+ }
+
+ public void setIdleTimeout(Integer idleTimeout) {
+ this.idleTimeout = idleTimeout;
+ }
}
\ No newline at end of file
diff --git
a/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConverter.java
b/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConverter.java
index b7fd55d..55e77e5 100644
---
a/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConverter.java
+++
b/components-starter/camel-mllp-starter/src/main/java/org/apache/camel/component/mllp/springboot/MllpComponentConverter.java
@@ -41,7 +41,7 @@ public class MllpComponentConverter implements
GenericConverter {
public Set<ConvertiblePair> getConvertibleTypes() {
Set<ConvertiblePair> answer = new LinkedHashSet<>();
- answer.add(new ConvertiblePair(String.class,
java.nio.charset.Charset.class));
+ answer.add(new ConvertiblePair(String.class,
org.apache.camel.component.mllp.MllpConfiguration.class));
return answer;
}
@@ -58,7 +58,7 @@ public class MllpComponentConverter implements
GenericConverter {
}
ref = ref.startsWith("#bean:") ? ref.substring(6) : ref.substring(1);
switch (targetType.getName()) {
- case "java.nio.charset.Charset": return
applicationContext.getBean(ref, java.nio.charset.Charset.class);
+ case "org.apache.camel.component.mllp.MllpConfiguration": return
applicationContext.getBean(ref,
org.apache.camel.component.mllp.MllpConfiguration.class);
}
return null;
}
diff --git a/docs/components/modules/spring-boot/examples/json/mllp.json
b/docs/components/modules/spring-boot/examples/json/mllp.json
index 9a87d87..4821de9 100644
--- a/docs/components/modules/spring-boot/examples/json/mllp.json
+++ b/docs/components/modules/spring-boot/examples/json/mllp.json
@@ -14,6 +14,20 @@
],
"properties": [
{
+ "name": "camel.component.mllp.accept-timeout",
+ "type": "java.lang.Integer",
+ "description": "Timeout (in milliseconds) while waiting for a TCP
connection TCP Server Only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 60000
+ },
+ {
+ "name": "camel.component.mllp.auto-ack",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/Disable the automatic generation of a MLLP
Acknowledgement MLLP Consumers only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
"name": "camel.component.mllp.autowired-enabled",
"type": "java.lang.Boolean",
"description": "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.",
@@ -21,11 +35,51 @@
"defaultValue": true
},
{
+ "name": "camel.component.mllp.backlog",
+ "type": "java.lang.Integer",
+ "description": "The maximum queue length for incoming connection
indications (a request to connect) is set to the backlog parameter. If a
connection indication arrives when the queue is full, the connection is
refused.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5
+ },
+ {
+ "name": "camel.component.mllp.bind-retry-interval",
+ "type": "java.lang.Integer",
+ "description": "TCP Server Only - The number of milliseconds to wait
between bind attempts",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5000
+ },
+ {
+ "name": "camel.component.mllp.bind-timeout",
+ "type": "java.lang.Integer",
+ "description": "TCP Server Only - The number of milliseconds to retry
binding to a server port",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 30000
+ },
+ {
"name": "camel.component.mllp.bridge-error-handler",
"type": "java.lang.Boolean",
- "description": "Allows for bridging the consumer to the Camel routing
Error Handler, which mean any exceptions occurred while the consumer is trying
to pickup incoming messages, or the likes, will now be processed as a message
and handled by the routing Error Handler. By default the consumer will use the
org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be
logged at WARN or ERROR level and ignored.",
+ "description": "Allows for bridging the consumer to the Camel routing
Error Handler, which mean any exceptions occurred while the consumer is trying
to receive incoming messages, or the likes, will now be processed as a message
and handled by the routing Error Handler. If disabled, the consumer will use
the org.apache.camel.spi.ExceptionHandler to deal with exceptions by logging
them at WARN or ERROR level and ignored.",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
- "defaultValue": false
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.charset-name",
+ "type": "java.lang.String",
+ "description": "Sets the default charset to use",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.configuration",
+ "type": "org.apache.camel.component.mllp.MllpConfiguration",
+ "description": "Sets the default configuration to use when creating MLLP
endpoints. The option is a org.apache.camel.component.mllp.MllpConfiguration
type.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.connect-timeout",
+ "type": "java.lang.Integer",
+ "description": "Timeout (in milliseconds) for establishing for a TCP
connection TCP Client only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 30000
},
{
"name": "camel.component.mllp.customizer.enabled",
@@ -34,9 +88,10 @@
},
{
"name": "camel.component.mllp.default-charset",
- "type": "java.nio.charset.Charset",
- "description": "Set the default character set to use for byte to\/from
String conversions. The option is a java.nio.charset.Charset type.",
- "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ "type": "java.lang.String",
+ "description": "Set the default character set to use for byte to\/from
String conversions.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": "ISO-8859-1"
},
{
"name": "camel.component.mllp.enabled",
@@ -45,6 +100,38 @@
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
},
{
+ "name": "camel.component.mllp.exchange-pattern",
+ "type": "org.apache.camel.ExchangePattern",
+ "description": "Sets the exchange pattern when the consumer creates an
exchange.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.hl7-headers",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/Disable the automatic generation of message
headers from the HL7 Message MLLP Consumers only",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.idle-timeout",
+ "type": "java.lang.Integer",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.idle-timeout-strategy",
+ "type": "org.apache.camel.component.mllp.MllpIdleTimeoutStrategy",
+ "description": "decide what action to take when idle timeout occurs.
Possible values are : RESET: set SO_LINGER to 0 and reset the socket CLOSE:
close the socket gracefully default is RESET.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration"
+ },
+ {
+ "name": "camel.component.mllp.keep-alive",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the SO_KEEPALIVE socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
"name": "camel.component.mllp.lazy-start-producer",
"type": "java.lang.Boolean",
"description": "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 [...]
@@ -52,9 +139,16 @@
"defaultValue": false
},
{
+ "name": "camel.component.mllp.lenient-bind",
+ "type": "java.lang.Boolean",
+ "description": "TCP Server Only - Allow the endpoint to start before the
TCP ServerSocket is bound. In some environments, it may be desirable to allow
the endpoint to start before the TCP ServerSocket is bound.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
+ },
+ {
"name": "camel.component.mllp.log-phi",
"type": "java.lang.Boolean",
- "description": "Set the component to log PHI data.",
+ "description": "Whether to log PHI",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
"defaultValue": true
},
@@ -64,6 +158,76 @@
"description": "Set the maximum number of bytes of PHI that will be
logged in a log entry.",
"sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
"defaultValue": 5120
+ },
+ {
+ "name": "camel.component.mllp.max-concurrent-consumers",
+ "type": "java.lang.Integer",
+ "description": "The maximum number of concurrent MLLP Consumer
connections that will be allowed. If a new connection is received and the
maximum is number are already established, the new connection will be reset
immediately.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5
+ },
+ {
+ "name": "camel.component.mllp.read-timeout",
+ "type": "java.lang.Integer",
+ "description": "The SO_TIMEOUT value (in milliseconds) used after the
start of an MLLP frame has been received",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 5000
+ },
+ {
+ "name": "camel.component.mllp.receive-buffer-size",
+ "type": "java.lang.Integer",
+ "description": "Sets the SO_RCVBUF option to the specified value (in
bytes)",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 8192
+ },
+ {
+ "name": "camel.component.mllp.receive-timeout",
+ "type": "java.lang.Integer",
+ "description": "The SO_TIMEOUT value (in milliseconds) used when waiting
for the start of an MLLP frame",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 15000
+ },
+ {
+ "name": "camel.component.mllp.require-end-of-data",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.reuse-address",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the SO_REUSEADDR socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
+ },
+ {
+ "name": "camel.component.mllp.send-buffer-size",
+ "type": "java.lang.Integer",
+ "description": "Sets the SO_SNDBUF option to the specified value (in
bytes)",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": 8192
+ },
+ {
+ "name": "camel.component.mllp.string-payload",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.tcp-no-delay",
+ "type": "java.lang.Boolean",
+ "description": "Enable\/disable the TCP_NODELAY socket option.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": true
+ },
+ {
+ "name": "camel.component.mllp.validate-payload",
+ "type": "java.lang.Boolean",
+ "description": "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.",
+ "sourceType":
"org.apache.camel.component.mllp.springboot.MllpComponentConfiguration",
+ "defaultValue": false
}
],
"hints": []