Amazon S3
You can configure Amazon S3 only as a source.
To configure the connection details for Amazon S3 in your Micro-Integration, see Amazon S3 Connection Parameters
You must also define at least one Micro-Integration Flow that specifies:
-
the endpoints where data is consumed from and published to. For more information, see Micro-Integration Flow Parameters.
-
how the header and payload fields should be mapped. For more information, see Mapping Headers and Payloads
For a listing of available message headers, see Amazon S3 Message Headers.
Amazon S3 Connection Parameters
The following table describes the connection parameters for Amazon S3.
| Field | Description |
|---|---|
| Checkpoint Queue | The name of the Last Value Queue to use as checkpoint storage. |
| Auto Create Checkpoint Queue | Select to automatically create the checkpoint queue if it does not exist. |
Micro-Integration Flow Parameters
You must configure the endpoint parameters for each Flow. Each Flow can have different settings, but they all share the connection details of the parent Micro-Integration.
Amazon S3 Source Parameters
The following table describes the parameters for configuring Amazon S3 as a source.
| Field | Description |
|---|---|
| Amazon S3 URI |
The URI of the Amazon S3 data source, including the bucket name or ARN. Format: |
| AWS Region | The AWS Region, for example, us-east-1. |
| AWS Access Key | The AWS Access Key ID to use to authenticate with the Amazon S3 service. |
| AWS Secret Key |
The Secret Access Key associated with the Access Key ID. |
| Delete after read | Select this option to delete the file after reading. |
| File Format |
The format of the files coming from the Amazon S3 service
|
| Additional Properties | Additional properties for the Amazon S3 service. For more information, see Additional Properties. |
Delimited File Configuration Properties
| Field | Description |
|---|---|
| Event Delimiter | The delimiter used to separate the events in the file. |
| Field Delimiter | The delimiter used to separate the fields in each event. |
JSON File Configuration Properties
| Field | Description |
|---|---|
| JSON Path Filter Expression |
A JSONPath expression used to split the JSON file into multiple messages. The default is |
XML File Configuration Properties
| Field | Description |
|---|---|
| XPath Filter Expression |
An XPath expression that splits the XML file into multiple messages. The default is |
Additional Properties
| Option | Type | Default | Description |
|---|---|---|---|
|
autoCreateBucket |
boolean |
|
When true, enables the autocreation of the S3 bucket. You can also use this parameter when the |
|
delimiter |
String |
None |
The delimiter to use to consume only objects you are interested in. |
|
forcePathStyle |
boolean |
|
When true, the S3 client uses a path-style URL instead of virtual-hosted-style. |
|
overrideEndpoint |
boolean |
|
When true, enables overriding the endpoint. This option must be used in combination with the |
|
policy |
String |
None |
The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. |
|
prefix |
String |
None |
A prefix to filter objects in the bucket. Only objects with keys starting with this prefix are consumed. If not set, all objects in the bucket are processed. For example, if |
|
uriEndpointOverride |
String |
None |
The overriding URI endpoint. This option must be used in combination with the |
|
customerAlgorithm |
String |
None |
The customer algorithm to use when CustomerKey is enabled. |
|
customerKeyId |
String |
None |
The id of the Customer key to use when CustomerKey is enabled. |
|
customerKeyMD5 |
String |
None |
The MD5 of Customer key to use when CustomerKey is enabled. |
|
destinationBucket |
String |
None |
The destination bucket where an object must be moved when |
|
destinationBucketPrefix |
String |
None |
The destination bucket prefix to use when an object must be moved, and |
|
destinationBucketSuffix |
String |
None |
The destination bucket suffix to use when an object must be moved, and |
|
doneFileName |
String |
None |
If provided, Camel consumes files only if a done file exists. |
|
fileName |
String |
None |
The file name to get the object from the bucket. |
|
maxConnections |
int |
|
The |
|
maxMessagesPerPoll |
int |
|
The maximum number of messages as a limit to poll at each polling. The default value is 10. Use 0 or a negative number to set it as unlimited. |
|
moveAfterRead |
boolean |
|
When true, moves objects from S3 bucket to a different bucket after they have been retrieved. To accomplish the operation, the |
|
removePrefixOnMove |
boolean |
|
When true, removes the prefix from the object key when moving it to the destination bucket. |
|
batchMessageNumber |
int |
|
The number of messages composing a batch in streaming upload mode. |
|
batchSize |
int |
|
The batch size (in bytes) in streaming upload mode. |
|
bufferSize |
int |
|
The buffer size (in bytes) in streaming upload mode. |
|
deleteAfterWrite |
boolean |
|
When true, deletes the file object after the S3 file has been uploaded. |
|
keyName |
String |
None |
The key name for an element in the bucket through endpoint parameter. |
|
streamingUploadMode |
boolean |
|
When true, the upload to bucket is done in streaming. |
|
streamingUploadTimeout |
long |
None |
When streaming upload mode is true, this option sets the timeout to complete upload. |
|
awsKMSKeyId |
String |
None |
The id of KMS key to use when KMS is enabled. |
|
conditionalWritesEnabled |
boolean |
|
When true, uploads the object only if the object key name does not already exist in the bucket specified. |
|
useAwsKMS |
boolean |
|
When true, KMS must be used. |
|
useCustomerKey |
boolean |
|
When true, Customer Key must be used. |
|
useSSES3 |
boolean |
|
When true, SSE S3 must be used. |
|
proxyHost |
String |
None |
The proxy host when instantiating the SQS client. |
|
proxyPort |
Integer |
None |
A proxy port to be used inside the client definition. |
|
proxyProtocol |
Protocol |
|
The proxy protocol to use instantiating the S3 client. Set to one of:
|
|
backoffErrorThreshold |
int |
None |
The number of subsequent error polls that must occur before the |
|
backoffIdleThreshold |
int |
None |
The number of subsequent idle polls that must occur before the |
|
backoffMultiplier |
int |
None |
A multiplier that allows the scheduled polling consumer to back off if there has been a number of subsequent idle polls or errors in a row. The multiplier represents the number of polls that are skipped before the next actual attempt occurs. When you use this option, you must also configure |
|
delay |
long |
|
The number of milliseconds before the next poll. |
|
greedy |
boolean |
|
When true, the ScheduledPollConsumer runs immediately again if the previous run polled one or more messages. |
|
initialDelay |
long |
|
The number of milliseconds before the first poll starts. |
|
repeatCount |
long |
|
The maximum number of times the scheduler fires. For example, if you set this parameter to 1, the scheduler fires only once. If you set it to 5, the scheduler fires five times. A value of zero or a negative value means the scheduler fires indefinitely. |
|
startScheduler |
boolean |
|
When true, the scheduler is auto started. |
|
useFixedDelay |
boolean |
|
When true, fixed delay is used. When false, fixed rate is used. See ScheduledExecutorService in the JDK for details. |
|
profileCredentialsName |
String |
None |
The profile name when using a profile credentials provider. |
|
sessionToken |
String |
None |
The Amazon AWS Session Token used when the user must assume an IAM role. |
|
trustAllCertificates |
boolean |
|
When true, all certificates are trusted when overriding the endpoint. |
|
useDefaultCredentialsProvider |
boolean |
|
When true, the S3 client expects to load credentials through a default credentials provider. |
|
useProfileCredentialsProvider |
boolean |
|
When true, the S3 client expects to load credentials through a profile credentials provider. |
|
useSessionCredentials |
boolean |
|
When true, the S3 client expects to use Session Credentials (useful when the user must assume an IAM role for doing operations in S3). |