UnpackContent

Description:

Unpacks the content of FlowFiles that have been packaged with one of several different Packaging Formats, emitting one to many FlowFiles for each input FlowFile. Supported formats are TAR, ZIP, and FlowFile Stream packages.

Tags:

Unpack, un-merge, tar, zip, archive, flowfile-stream, flowfile-stream-v3

Properties:

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values.

Display NameAPI NameDefault ValueAllowable ValuesDescription
Packaging FormatPackaging Formatuse mime.type attribute
  • use mime.type attribute
  • tar
  • zip
  • flowfile-stream-v3
  • flowfile-stream-v2
  • flowfile-tar-v1
The Packaging Format used to create the file
File FilterFile Filter.*Only files contained in the archive whose names match the given regular expression will be extracted (tar/zip only)
PasswordPasswordPassword used for decrypting Zip archives encrypted with ZipCrypto or AES. Configuring a password disables support for alternative Zip compression algorithms.
Sensitive Property: true
Allow Stored Entries With Data Descriptorallow-stored-entries-wddfalse
  • true
  • false
Some zip archives contain stored entries with data descriptors which by spec should not happen. If this property is true they will be read anyway. If false and such an entry is discovered the zip will fail to process.

This Property is only considered if the [Packaging Format] Property has a value of "zip".

Relationships:

NameDescription
successUnpacked FlowFiles are sent to this relationship
failureThe original FlowFile is sent to this relationship when it cannot be unpacked for some reason
originalThe original FlowFile is sent to this relationship after it has been successfully unpacked

Reads Attributes:

NameDescription
mime.typeIf the <Packaging Format> property is set to use mime.type attribute, this attribute is used to determine the FlowFile's MIME Type. In this case, if the attribute is set to application/tar, the TAR Packaging Format will be used. If the attribute is set to application/zip, the ZIP Packaging Format will be used. If the attribute is set to application/flowfile-v3 or application/flowfile-v2 or application/flowfile-v1, the appropriate FlowFile Packaging Format will be used. If this attribute is missing, the FlowFile will be routed to 'failure'. Otherwise, if the attribute's value is not one of those mentioned above, the FlowFile will be routed to 'success' without being unpacked. Use the File Filter property only extract files matching a specific regular expression.

Writes Attributes:

NameDescription
mime.typeIf the FlowFile is successfully unpacked, its MIME Type is no longer known, so the mime.type attribute is set to application/octet-stream.
fragment.identifierAll unpacked FlowFiles produced from the same parent FlowFile will have the same randomly generated UUID added for this attribute
fragment.indexA one-up number that indicates the ordering of the unpacked FlowFiles that were created from a single parent FlowFile
fragment.countThe number of unpacked FlowFiles generated from the parent FlowFile
segment.original.filename The filename of the parent FlowFile. Extensions of .tar, .zip or .pkg are removed because the MergeContent processor automatically adds those extensions if it is used to rebuild the original FlowFile
file.lastModifiedTimeThe date and time that the unpacked file was last modified (tar only).
file.creationTimeThe date and time that the file was created. This attribute holds always the same value as file.lastModifiedTime (tar only).
file.ownerThe owner of the unpacked file (tar only)
file.groupThe group owner of the unpacked file (tar only)
file.permissionsThe read/write/execute permissions of the unpacked file (tar only)
file.encryptionMethodThe encryption method for entries in Zip archives

State management:

This component does not store state.

Restricted:

This component is not restricted.

Input requirement:

This component requires an incoming relationship.

System Resource Considerations:

None specified.

See Also:

MergeContent