Creates a compressed archive file containing one or more files.
This node allows users to generate a compressed archive file to easily distribute large data sets electronically while using less storage space.
In order for the node to determine the file(s) to be archived and the details of the new archive file, specify one of the following:
a. The file path to a specific file to be archived, or the directory to be archived.b. The absolute path of the archive file to be created.
If you have a list of these details, they can be provided as an input data set by attaching it to the node.
By default, the output archive file will be in a ZIP format.
The default level of compression applied is Medium, which is normal compression for ZIP archives. Alternatively, you can select to use a Low or High compression level.
You can specify the criteria for the files to be archived in the SourcePath and DestinationPath properties.
If an encryption algorithm is to apply, you can specify this in the EncryptionAlgorithm property along with an associated password.
When the node runs successfully, a compressed archive file is created.
The output pin contains the results of the processing with the following details:
- Source file(s) added to the archive file.
- Path of the created archive file.
- Path within the archive file for each source file.
Properties
SourcePath
Specify the path to the file or the directory to archive. You can specify a literal value (default) or an input field.
The path must be provided as an absolute path e.g. C:/Users/Analyst.
If the path is to a directory, a pattern must be specified in the Pattern property to select which files to archive.
A value is required for this property.
DestinationPath
Specify the path of the archive file to create. You can specify a literal value (default) or a field from the input.
Must be an absolute path e.g. C:/Users/Analyst/Single_Invoice.zip and the filename extension must be .zip (creates a Zip archive file).
If multiple SourcePath files are defined via an input pin and are required in the same destination file, you must specify a literal value in this property (in this situation all files will be stored within the same archive file).
A value is required for this property.
Pattern
Optionally specify an expression to select which files to archive. For example, if we have a directory full of files named Data1, Data2, Data3, we can use "Data*" to match all of them. Case insensitive.
The default value is * which means all files will be included in the archive.
Recurse
Optionally specify whether to search the directory tree under the specified SourcePath for files that match the pattern specified in the Pattern property. You can specify a literal value (default) or an input field.
The default value is False, that is, do not search the directory tree.
EncryptionAlgorithm
Optionally specify the encryption algorithm to use.
Choose from:
- None - No encryption is applied to the file that is archived.
- Standard - Basic ZIP encryption is applied to each file that is archived.
- AES128 - 128 bit Advanced Encryption Standard (AES) encryption is applied to each file that is archived.
- AES256 - 256 bit Advanced Encryption Standard (AES) encryption is applied to each file that is archived.
The default value is None.
Password
Optionally specify the password to apply to the archive file.
It is mandatory to provide a password if an encryption algorithm is specified.
CompressionType
Optionally specify the type of compression to use.
Choose from:
- Deflate - use deflate compression for zip archive.
- Store - do not use compression.
The default value is Deflate.
CompressionLevel
Optionally specify the level of compression to apply to the archived files.
Choose from:
- Low - Uses 'Fastest' compression for ZIP archives or level '1' for Deflate compression.
- Medium - Uses 'Normal' compression for ZIP archives or level '5' for Deflate compression.
- High - Uses 'Ultra' compression for ZIP archives or level '9' for Deflate compression.
The default value is Medium.
PassThroughFields
Optionally specify which input fields will "pass through" the node unchanged from the input to the output, assuming that the input exists. The specified input fields will appear on those output records which were produced as a result of the input fields.
Choose from:
All - passes through all input data fields to the output.
None - no input data fields are passed to the output. Only the fields created by the node appear on the output.
Used - passes through all the fields that are referenced in the node, including any input field referenced by a property, be it explicitly (via a 'field1' reference) or via a field pattern ('1:foo*').
Unused - passes through all the fields that are not referenced in the node.
If a naming conflict exists between a pass-through field and an explicitly named output field, an error will occur.
The default value is Used.
CreateFileUsingAbsolutePath
Optionally specify if the path within the archive files should correspond with the absolute path of the files on the source file system.
The default value is False.
Enabled
Optionally specify whether the node is enabled or disabled. You can either choose from True or False, or reference another property (see the topic Using derived property values) which will be evaluated to a true /false value.
Disabled nodes are not executed, even if they are selected to run.
The default value is True.
LogLevel
Optionally specify the level at which non-fatal messages are logged. The lower the level, the more information will be recorded in the log file. Choose from:
0 - Information
1 - Low
2 - Medium
3 - High
4 - Fatal
The default value is 2 (Medium), which can be changed in the ls_brain_node.prop
configuration file by modifying the property ls.brain.node.logLevel
.
FileExistsBehavior
Optionally specify what to do when a file being archived already exists in the archive.
Choose from:
Error - gives a transfer error and skip the file.
Log - logs a warning message and skip the file.
Ignore - skips the file.
Overwrite - overwrites the file.
The default value is Error.
Inputs and outputs
Inputs: Multiple optional.
Outputs: Multiple optional.