Bulk Producer
The Bulk Producer is responsible for subscribing to the stream of bulk components provided by the Joiner and writing each one to a supported File Writer resulting in the production of a bulk file.
The bulk file will be output to a location as specified in the bulk configurations, where each configuration entry could have its own output location.
Relevant configuration is described below:
| Config | Type | Default | Comment |
|---|---|---|---|
|
String |
|
Property that defines the location that the output bulk file will be streamed to. Valid values are |
|
String |
N/A |
Property that defines the directory or S3 bucket the files will be streamed to on the file system specified above. |
Example:
ipf.bulker {
output.file-system = "local"
configurations = [
{
name = "pain.001.001.09"
file-name-prefix = "bulk-"
file-path = "/tmp/bulks"
component-hierarchy {
component-parser-name = "xml"
marker = "Document"
children = [
{
marker = "CstmrCdtTrfInitn.PmtInf"
children = [
{
before-elements = ["SplmtryData"]
marker = "CdtTrfTxInf"
}
]
}
]
}
auto-close-triggers = ["customAutoCloseTrigger"]
maximum-component-size = 50
scheduled-auto-close = {
auto-close-by-age = 30s
schedule-at = "*/10 * * ? * *"
}
finalise-on-auto-close = true
}
]
}
Retries
If there is a system crash whilst a bulk file is being produced then on restart the file production process will be retried.
If at any point during the bulk file production process an exception is encountered a system event will be raised allowing for a manual intervention process to take place. In this scenario the problem bulk file detailed in the event should be removed manually before attempting to finalising the bulk again.