This source app supports transfer of files using the Amazon S3 protocol.
Files are transferred from the remote directory (S3 bucket) to the local directory where the application is deployed.
Messages emitted by the source are provided as a byte array by default. However, this can be
customized using the --mode option:
-
ref Provides a
java.io.Filereference -
lines Will split files line-by-line and emit a new message for each line
-
contents The default. Provides the contents of a file as a byte array
When using --mode=lines, you can also provide the additional option --withMarkers=true.
If set to true, the underlying FileSplitter will emit additional start-of-file and end-of-file marker messages before and after the actual data.
The payload of these 2 additional marker messages is of type FileSplitter.FileMarker. The option withMarkers defaults to false if not explicitly set.
See also MetadataStore options for possible shared persistent store configuration used to prevent duplicate messages on restart.
-
Content-Type: text/plain -
file_orginalFile: <java.io.File> -
file_name: <file name> -
correlationId: <UUID>(same for each line) -
sequenceNumber: <n> -
sequenceSize: 0(number of lines is not know until the file is read)
The s3-source has the following options:
The Amazon S3 Source (as all other Amazon AWS applications) is based on the Spring Cloud AWS project as a foundation, and its auto-configuration classes are used automatically by Spring Boot. Consult their documentation regarding required and useful auto-configuration properties.