Interface HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder
- All Superinterfaces:
org.apache.camel.builder.EndpointProducerBuilder
,org.apache.camel.EndpointProducerResolver
- All Known Subinterfaces:
HdfsEndpointBuilderFactory.AdvancedHdfsEndpointBuilder
- Enclosing interface:
- HdfsEndpointBuilderFactory
public static interface HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder
extends org.apache.camel.builder.EndpointProducerBuilder
Advanced builder for endpoint producers for the HDFS component.
-
Method Summary
Modifier and TypeMethodDescriptionbasic()
blockSize
(long blockSize) The size of the HDFS blocks.The size of the HDFS blocks.bufferSize
(int bufferSize) The buffer size used by HDFS.bufferSize
(String bufferSize) The buffer size used by HDFS.checkIdleInterval
(int checkIdleInterval) How often (time in millis) in to run the idle checker background task.checkIdleInterval
(String checkIdleInterval) How often (time in millis) in to run the idle checker background task.chunkSize
(int chunkSize) When reading a normal file, this is split into chunks producing a message per chunk.When reading a normal file, this is split into chunks producing a message per chunk.compressionCodec
(String compressionCodec) The compression codec to use.compressionCodec
(org.apache.camel.component.hdfs.HdfsCompressionCodec compressionCodec) The compression codec to use.compressionType
(String compressionType) The compression type to use (is default not in use).compressionType
(org.apache.camel.component.hdfs.HdfsCompressionType compressionType) The compression type to use (is default not in use).lazyStartProducer
(boolean lazyStartProducer) Whether the producer should be started lazy (on the first message).lazyStartProducer
(String lazyStartProducer) Whether the producer should be started lazy (on the first message).openedSuffix
(String openedSuffix) When a file is opened for reading/writing the file is renamed with this suffix to avoid to read it during the writing phase.readSuffix
(String readSuffix) Once the file has been read is renamed with this suffix to avoid to read it again.replication
(short replication) The HDFS replication factor.replication
(String replication) The HDFS replication factor.splitStrategy
(String splitStrategy) In the current version of Hadoop opening a file in append mode is disabled since it's not very reliable.Methods inherited from interface org.apache.camel.builder.EndpointProducerBuilder
doSetMultiValueProperties, doSetMultiValueProperty, doSetProperty, expr, getRawUri, getUri
Methods inherited from interface org.apache.camel.EndpointProducerResolver
resolve, resolve
-
Method Details
-
basic
-
lazyStartProducer
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder lazyStartProducer(boolean 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. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)- Parameters:
lazyStartProducer
- the value to set- Returns:
- the dsl builder
-
lazyStartProducer
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder lazyStartProducer(String 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. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)- Parameters:
lazyStartProducer
- the value to set- Returns:
- the dsl builder
-
blockSize
The size of the HDFS blocks. The option is a: <code>long</code> type. Default: 67108864 Group: advanced- Parameters:
blockSize
- the value to set- Returns:
- the dsl builder
-
blockSize
The size of the HDFS blocks. The option will be converted to a <code>long</code> type. Default: 67108864 Group: advanced- Parameters:
blockSize
- the value to set- Returns:
- the dsl builder
-
bufferSize
The buffer size used by HDFS. The option is a: <code>int</code> type. Default: 4096 Group: advanced- Parameters:
bufferSize
- the value to set- Returns:
- the dsl builder
-
bufferSize
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder bufferSize(String bufferSize) The buffer size used by HDFS. The option will be converted to a <code>int</code> type. Default: 4096 Group: advanced- Parameters:
bufferSize
- the value to set- Returns:
- the dsl builder
-
checkIdleInterval
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder checkIdleInterval(int checkIdleInterval) How often (time in millis) in to run the idle checker background task. This option is only in use if the splitter strategy is IDLE. The option is a: <code>int</code> type. Default: 500 Group: advanced- Parameters:
checkIdleInterval
- the value to set- Returns:
- the dsl builder
-
checkIdleInterval
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder checkIdleInterval(String checkIdleInterval) How often (time in millis) in to run the idle checker background task. This option is only in use if the splitter strategy is IDLE. The option will be converted to a <code>int</code> type. Default: 500 Group: advanced- Parameters:
checkIdleInterval
- the value to set- Returns:
- the dsl builder
-
chunkSize
When reading a normal file, this is split into chunks producing a message per chunk. The option is a: <code>int</code> type. Default: 4096 Group: advanced- Parameters:
chunkSize
- the value to set- Returns:
- the dsl builder
-
chunkSize
When reading a normal file, this is split into chunks producing a message per chunk. The option will be converted to a <code>int</code> type. Default: 4096 Group: advanced- Parameters:
chunkSize
- the value to set- Returns:
- the dsl builder
-
compressionCodec
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder compressionCodec(org.apache.camel.component.hdfs.HdfsCompressionCodec compressionCodec) The compression codec to use. The option is a: <code>org.apache.camel.component.hdfs.HdfsCompressionCodec</code> type. Default: DEFAULT Group: advanced- Parameters:
compressionCodec
- the value to set- Returns:
- the dsl builder
-
compressionCodec
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder compressionCodec(String compressionCodec) The compression codec to use. The option will be converted to a <code>org.apache.camel.component.hdfs.HdfsCompressionCodec</code> type. Default: DEFAULT Group: advanced- Parameters:
compressionCodec
- the value to set- Returns:
- the dsl builder
-
compressionType
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder compressionType(org.apache.camel.component.hdfs.HdfsCompressionType compressionType) The compression type to use (is default not in use). The option is a: <code>org.apache.camel.component.hdfs.HdfsCompressionType</code> type. Default: NONE Group: advanced- Parameters:
compressionType
- the value to set- Returns:
- the dsl builder
-
compressionType
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder compressionType(String compressionType) The compression type to use (is default not in use). The option will be converted to a <code>org.apache.camel.component.hdfs.HdfsCompressionType</code> type. Default: NONE Group: advanced- Parameters:
compressionType
- the value to set- Returns:
- the dsl builder
-
openedSuffix
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder openedSuffix(String openedSuffix) When a file is opened for reading/writing the file is renamed with this suffix to avoid to read it during the writing phase. The option is a: <code>java.lang.String</code> type. Default: opened Group: advanced- Parameters:
openedSuffix
- the value to set- Returns:
- the dsl builder
-
readSuffix
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder readSuffix(String readSuffix) Once the file has been read is renamed with this suffix to avoid to read it again. The option is a: <code>java.lang.String</code> type. Default: read Group: advanced- Parameters:
readSuffix
- the value to set- Returns:
- the dsl builder
-
replication
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder replication(short replication) The HDFS replication factor. The option is a: <code>short</code> type. Default: 3 Group: advanced- Parameters:
replication
- the value to set- Returns:
- the dsl builder
-
replication
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder replication(String replication) The HDFS replication factor. The option will be converted to a <code>short</code> type. Default: 3 Group: advanced- Parameters:
replication
- the value to set- Returns:
- the dsl builder
-
splitStrategy
default HdfsEndpointBuilderFactory.AdvancedHdfsEndpointProducerBuilder splitStrategy(String splitStrategy) In the current version of Hadoop opening a file in append mode is disabled since it's not very reliable. So, for the moment, it's only possible to create new files. The Camel HDFS endpoint tries to solve this problem in this way: If the split strategy option has been defined, the hdfs path will be used as a directory and files will be created using the configured UuidGenerator. Every time a splitting condition is met, a new file is created. The splitStrategy option is defined as a string with the following syntax: splitStrategy=ST:value,ST:value,... where ST can be: BYTES a new file is created, and the old is closed when the number of written bytes is more than value MESSAGES a new file is created, and the old is closed when the number of written messages is more than value IDLE a new file is created, and the old is closed when no writing happened in the last value milliseconds. The option is a: <code>java.lang.String</code> type. Group: advanced- Parameters:
splitStrategy
- the value to set- Returns:
- the dsl builder
-