AlfrescoRestDeleteNode - Alfresco delete nodes using Alfresco REST protocol
This task relies on the Alfresco public REST API (with v1.0.4 of the Alfresco REST client) to delete nodes.
Mandatory settings
Optional settings
| Key | Type | Description | Default value |
|---|
| Permanent deletion of the node | Boolean | If true then the node is deleted permanently, without moving to the trashcan. Only the owner of the node or an admin can permanently delete the node. | true |
| The pattern to get the node Id from the document | Pattern | | |
AwsMove - AWS S3 file mover
Reorganize your files inside your AWS S3 environment.
Mandatory settings
| Key | Type | Description |
|---|
| AWS access credentials | AWSConnectionProvider | Must have granted AmazonS3FullAccess permission |
| Target key | String | The destination path inside your bucket where the document must be placed. Use as standard Pattern (includes S3 Folders) |
Optional settings
| Key | Type | Description |
|---|
| Target bucket | String | The target bucket where you want to move your S3 files. If empty use the same as origin |
CheckCompoundDocumentSettings - Check if an Office document contains embedded files
Only Office documents are supported (docx, xlsx, pptx). All other contents will be skipped.
Optional settings
| Key | Type | Description | Default value |
|---|
| Data name for found items | String | The name of the new data under which the list of found items will be stored | EMBEDDED_FILES |
| Extract as side content | Boolean | | |
CountPdfPages - Count the number of pages in PDF file
This task will add the number of pages as a metadata to the document.
Optional settings
| Key | Type | Description | Default value |
|---|
| Throw conversion exceptions | Boolean | If Fast2 performs document conversion, it can either fail silently or pop an error when the action has not been properly completed | true |
| Mime-type : Check document before content | Boolean | You can assume the file extension is accurate, or ask Fast2 to check the content encoding to identify more precisely the document mime-type. By default, Fast2 will check at content level | false |
| Process annotation contents | Boolean | If annotations are asked to be migrated, you can filter here to process their content(s) or only their metadata | false |
| Scan recursive content | Boolean | Only convert terminal contents and not container ones | false |
| Process all contents | Boolean | Fast2 will either only focus on the first encountered content, or process them all | true |
| Supported mime-types | String list | Specify the list of all mime-types of documents which Fast2 will convert | |
| Property name | String | Name of the property to which the number of pages will be linked | F_PAGES |
DeduplicatePunnets - De-duplicate tasks based on some pattern
This task is used to get rid of duplicate punnets
Mandatory settings
| Key | Type | Description |
|---|
| Save values to this file | Pattern | |
| The pattern to use to get the unique value | Pattern | |
Optional settings
| Key | Type | Description | Default value |
|---|
| Iterate over punnets (default: false) or over documents (true) | Boolean | | false |
| The pattern to use to explain which element this is duplicate with | Pattern | | |
| Size of per-file hash table | Integer | Each file has a table attached to access the existing elements faster (the larger the table, the faster the search). Each individual file will store n elements (size of file / size of each elements), the recommended value for hash table should not be less than 10% of the number elements per file, which means each hash table entry references ~10 elemens. Example : storing 50 bytes of identifications (from the Identification pattern), each element will be ~100 bytes (including key, ..), so a 64MBytes file will store ~671088 elements per file. The hash table being 64k, each hash table entry references ~10 elements | 65536 |
| Size of each individual file, in MBytes | Integer | Multiple files will be created on-demand to store all elements as required. | 64 |
| In which property we put the identification of the first element we are duplicate with | String | | |
EndTaskWriter - Create file with custom content when map ends
A task to write a file when all punnets of task are finished.
Mandatory settings
| Key | Type | Description |
|---|
| Output file path | String | Absolute path to file. This path must include file name and extension. This field will be resolved by Fast2 before the task is run |
Optional settings
| Key | Type | Description | Default value |
|---|
| File encoding | String | Encoding of the file where the content will be written | UTF-8 |
| File content | String | Text to write in the output file | |
ExceptionGenerator - Regularly generate exceptions
This task will generates different exception types : either TaskException or RuntimeException. It will be usefull for your when dealing with exception routing.By default, Fast2 will produce 3 task exceptions, then 4 runtime exceptions, and finally 4 no-exception punnets. To force exceptions, set the no-exceptions ratio to zero.
Optional settings
| Key | Type | Description | Default value |
|---|
| Runtime exceptions ratio | Integer | The number of runtime exception which will be thrown by Fast2 | 3 |
| No-exception ratio | Integer | The number of no-exception which will be thrown by Fast2 | 4 |
| Task exceptions ratio | Integer | The number of task exception which will be thrown by Fast2 | 3 |
FlowerDocsQuerier - FlowerDocs querier
Allows components extraction from FlowerDocs using JSON formatted FlowerDocs request. Components can be documents, folders, virtual folders or tasks.
Mandatory settings
| Key | Type | Description | Default value | Example |
|---|
| FlowerDocs connection provider | FlowerDocsConnectionProvider | | | |
| JSON Flower Search Request | String | This field supports pattern ${...} syntax. | | {\"filterClauses\": [{\"criteria\": [{\"name\": \"B_IdPli\",\"operator\": \"EQUALS_TO\",\"type\": \"STRING\",\"values\": [\"KOFAX_e57f087f-0fe5-48d0-bee6-2d6b10a874a9\"]}]}],\"max\": 100,\"start\": 0} |
| Flower component category | String | Choose among DOCUMENT, TASK, FOLDER or VIRTUAL_FOLDER. This field supports pattern ${...} syntax. | | |
GenerateExceptionTask - Throw exception when condition is verified
This task is responsible for exception generation based on a condition which can be dynamically built for each punnet.
Optional settings
| Key | Type | Description | Default value |
|---|
| Condition | String | Set here the condition to trigger exception. This field will be resolved by Fast2 before the task is executed Ex/ mimeType == application/pdf | true |
GenericRestApiTask - Consume a REST API
Consume any generic REST API task and add the response in the punnet. Supported Methods: GET, PUT, POST and DELETE.
Configuration: Allows defining the API endpoint URL, headers, and query parameters.
Response Handling: The HTTP status code (e.g., 200) and the response body (e.g., JSON) are automatically mapped to punnet metadata fields, with configurable key names.
Error Handling: In case of a failed API call, the error code and response body (if available) are still added to the punnet to allow for diagnostics.
Mandatory settings
| Key | Type | Description | Default value |
|---|
| Response code metadata key | Pattern | Property name of the response code in the dataset | |
| Body metadata key | Pattern | Property name of the body in the dataset | |
| REST API client | GenericRestClient | | |
| Continue task after document failed | Boolean | Continue the task process even if an API call failed with a document | true |
HashSignTask - Compute content hash
This task computes the hash of a given document content. This new hash can be confronted to an already existing one.
Optional settings
| Key | Type | Description | Default value |
|---|
| Suffix of ouptut file | String | Suffix of the external file containing the hash value to compare with | |
| Conten key for hash | String | Name of the metadata where the hash value will be stored. This value will be attached to the content and the document dataset itself | hash |
| Algorithm | String | The algorithm of hashing which will be used for document content | SHA-256 |
| Process annotation contents | Boolean | If annotations are asked to be migrated, you can filter here to process their content(s) or only their metadata | false |
| Scan recursive content | Boolean | Only convert terminal contents and not container ones | false |
| Supported mime-types | String list | Specify the list of all mime-types of documents which Fast2 will convert | |
| Block size | Integer | In bytes. The default value is 256 * 1024 | 262144 |
| Throw conversion exceptions | Boolean | If Fast2 performs document conversion, it can either fail silently or pop an error when the action has not been properly completed | true |
| Mime-type : Check document before content | Boolean | You can assume the file extension is accurate, or ask Fast2 to check the content encoding to identify more precisely the document mime-type. By default, Fast2 will check at content level | false |
| Existing hash to compare | String | Document data name to compare the new hash with. Throws TaskException when different | |
| Process all contents | Boolean | Fast2 will either only focus on the first encountered content, or process them all | true |
| Document key for hash | String | Name of the metadata where the hash value will be stored, at document level | |
MailMover - Move email conversation into folder
This task will be useful when your needs will be to move a given email conversation into a dedicated folder. Whether this folder exists or not, Fast2 will be able to retrieve or create it.
Mandatory settings
| Key | Type | Description |
|---|
| Email provider | MailBoxProvider | The Fast2 module establishing the connection to the email server, from the account of a given user. For more about the configuration of the object, please refer to the appropriate section |
| Destination folder | String | The folder where the email will eventually be moved to. This value will be resolved by Fast2 prior to the task execution |
Optional settings
| Key | Type | Description | Default value |
|---|
| mailNotFoundException | Boolean | | |
| Maximum connection TTL | Long | Fill the value in milliseconds | 60 |
| Data to find | String | The data to look for. This value will be resolved by Fast2 prior to the task execution | ${Message-Id} |
| Create destination folder | Boolean | Ask Fast2 to create the destination folder to move the email into, in case this specific folder does not exist yet | false |
| Search field name | String | The name of the field where to find the data. Only 'Subject' and 'Message-Id' are available | Message-Id |
MimeTypeFinder - Find mime-type of documents
This task is used for automatic detection of mime type for documents
Optional settings
| Key | Type | Description | Default value |
|---|
| Process annotation contents | Boolean | If annotations are asked to be migrated, you can filter here to process their content(s) or only their metadata | false |
| Scan recursive content | Boolean | Only convert terminal contents and not container ones | false |
| Stop at first exception | Boolean | Stop processing punnets when one could not been properly processed | false |
| Supported mime-types | String list | Specify the list of all mime-types of documents which Fast2 will convert | |
| Use most specific mime type | Boolean | Otherwise use the first mime type found | false |
| Throw conversion exceptions | Boolean | If Fast2 performs document conversion, it can either fail silently or pop an error when the action has not been properly completed | true |
| Default mime type | String | The default mime-type to set if none has been found. This value must be set, or it will throw a RuntimeException | application/octet-stream |
| Mime-type : Check document before content | Boolean | You can assume the file extension is accurate, or ask Fast2 to check the content encoding to identify more precisely the document mime-type. By default, Fast2 will check at content level | false |
| Update document mime type | Boolean | Otherwise update only page or content mimetype | true |
| Force to identify mime type | Boolean | If the mime type could not be found by looking at the metadata, either Fast2 skips the document or digs deeper into the content to retrieve the mime type | false |
| Process all contents | Boolean | Fast2 will either only focus on the first encountered content, or process them all | true |
MimetypeToExtension - Append extension to name
Based on the mime-type of the content, this task will resolve the correct extension to append to the name of the document. Only supported for one content per document
Optional settings
| Key | Type | Description | Default value |
|---|
| Document mime-type | String | This value will be resolved by Fast2, ${...} syntax is supported. Use this option when only the document mime-type has been provided, without the actual content. | |
| Key of name property | String | Key of the current name metadata, whose value will be appended by the matching extension. | name |
MoveAnnotationContent - Move the content of any annotation
This task is responsible for moving content of annotations from a given folder into a new one.
Mandatory settings
| Key | Type | Description |
|---|
| Source folder | String | Absolute path of the folder where to find the annotations to move |
| Destination folder | String | Absolute path of the folder where to move the annotations |
MoveContent - Move or copy the content of a document
This task is responsible for moving content of documents from a given folder into a new one.
Mandatory settings
| Key | Type | Description |
|---|
| Destination folder | String | The path of the folder where the contents will be moved into |
Optional settings
| Key | Type | Description | Default value |
|---|
| Copy files | Boolean | Copy the file to the destination folder instead of moving it | false |
| Delete original copy | Boolean | Delete the file in the source folder when it has been migrated | false |
| Process annotation contents | Boolean | If annotations are asked to be migrated, you can filter here to process their content(s) or only their metadata | false |
| Checking interval | Integer | Time to wait between two checks if target file exists | 1000 |
| Scan recursive content | Boolean | Only convert terminal contents and not container ones | false |
| Exclude file name for renaming file | Boolean | Renamed the file based on the value of the destination folder only | false |
| Wait until target file exists | Boolean | Only process next document when the current has successfully been migrated | false |
| Supported mime-types | String list | Specify the list of all mime-types of documents which Fast2 will convert | |
| Allowed retries | Integer | Number of checks before despair and exception | 60 |
| Source folder | String | Set here the common prefix of all document contents to move. If null use file folder | |
| Throw conversion exceptions | Boolean | If Fast2 performs document conversion, it can either fail silently or pop an error when the action has not been properly completed | true |
| Mime-type : Check document before content | Boolean | You can assume the file extension is accurate, or ask Fast2 to check the content encoding to identify more precisely the document mime-type. By default, Fast2 will check at content level | false |
| File extension | String | The extension to append to the name of the files once they'll be moved | |
| Keep original filename | Boolean | Set the destination file name to the 'title' property defined at the content level. Otherwise, keep the name of the file pointed by the URL | false |
| Process all contents | Boolean | Fast2 will either only focus on the first encountered content, or process them all | true |
| Files to exclude | String list | The path of the folder to exclude. Its whole content will remain in place. Leave empty to move all folders children Ex/ *.out, folder/**/exclude | |
MovePunnet - Move a punnet from folder to folder
This task is responsible for moving a punnet from an embedded path into a new folder.
Mandatory settings
| Key | Type | Description |
|---|
| Destination path | String | The path where to move the punnets. This field will be resolved by Fast2 prior to the task execution |
Optional settings
| Key | Type | Description | Default value |
|---|
| Time between two retries | Integer | In milliseconds | 1000 |
| Allowed retries | Integer | Maximum number of retries before throwing an exception when renaming failed | 10 |
| Override existing punnet | Boolean | If Fast2 finds an already existing punnet, it will override it with the one being processed | true |
| Look for path at punnet level | Boolean | Tells Fast2 to look for the absolute path variable (whose key is 'absolutePath') into the punnet dataset. Otherwise Fast2 will look at the first document dataset level | true |
Noop - Blank task performing no operation
This task does not perform anything, hence you don't have to configure it. All documents and punnets will go through it without having their state updated.
NuxeoQuery - Query nuxeo from NXQL
This task only works with JDK-11. If any record matches the input query, the UUID of the Nuxeo items will be added to the F2 document as a new dataset.
Mandatory settings
| Key | Type | Description |
|---|
| Nuxeo connection details | NuxeoConnectionProvider | |
| Nuxeo query | String | NXQL query, with double-quotes around values (Ex: SELECT * FROM Document WHERE dc:title = \"${nom}\" AND ecm:isTrashed = 0) |
ParseJsonAsProperties - Task to add new data from a JSON file as data
Mandatory settings
| Key | Type | Description | Example | Default value |
|---|
| Path of JSON file to parse | Pattern | ${absolutePath}/myFile.json | Path of JSON file for properties to map. Pattern syntax ${...} is supported, wilcards are not. | |
PropertyHelper - FileNet submodule for properties management
Optional settings
| Key | Type | Description | Default value |
|---|
| Blacklist for extraction | String list | Default blacklist is: ActiveMarkings, AuditedEvents, Annotations, ChildDocuments, ChildRelationships, CmHoldRelationships, CmThumbnails, Containers, CoordinatedTasks, CurrentVersion, DependentDocuments, DestinationDocuments, ExternalReplicaIdentities, ParentDocuments, ParentRelationships, Permissions, ReleasedVersion, StorageArea, StoragePolicy, This, Versions, WorkflowSubscriptions | |
| Force user names | Boolean | Force assigning users (e.g. Creator, LastModifier) when they don't exist in the destination environment | true |
| Date format | String | | MM dd HH:mm:ss z yyyy |
| Property name used to explicitly skip Data | String | | |
| Do not throw Date parsing exceptions | Boolean | | |
| Store object-store as name | Boolean | By default, Fast2 is expecting FileNet UUID as object-store reference on object-typed properties. Enable this option to deal with the object-store name instead of its UUID. This parameter is only use at extraction. | |
PunnetSerializer - From-java-to-XML punnet converter
This task is responsible for serializing a punnet to an XML file. That can be interesting to check punnet metadata or freeze a punnet at a certain state.
Optional settings
| Key | Type | Description | Default value |
|---|
| Serialize punnets as JSON | Boolean | If enabled, punnet will be serialized as Json file. Otherwise, it will be a XML file. | false |
PunnetWriteId - List all punnet IDs into a file
This task is responsible for writing all punnet IDs into a given text file. Whether the punnet has documents or not, you can keep a trace of all created and encountered punnets.
Mandatory settings
| Key | Type | Description |
|---|
| Output file | String | The absolute path of the output file where to store all punnet IDs. Specify file name and extension |
Optional settings
| Key | Type | Description | Default value |
|---|
| OutputStream | | |
| Append | Boolean | Create FileOutputStream with this append option | |
| Always write punnet ID | Boolean | Write punnet Id event when it contains no document | true |
ReadContent - Resolve mime type from content
This task is responsible to find the mime type of a document accross either its metadata or its content.
Mandatory settings
| Key | Type | Description |
|---|
| Mime type retriever | MimeTypeFinder | Module to find content mime type |
Optional settings
| Key | Type | Description | Default value |
|---|
| Dry run | Boolean | Process all punnets without editing their state or metadata | false |
| Maximum number of page read per content | Integer | Only for multi-page content | Integer.MAX_VALUE |
| Force to identify mime type | Boolean | Ask Fast2 to dig deeper into the content to find a mime type. The metadata will be added to the content | false |
SQLMultiQueryTask - Perform SQL statements between database tables and documents in Fast2
Perform SQL INSERT or UPDATE statements to documents in database, or SELECT from data existing in the database to attach them onto the document dataset.
Mandatory settings
| Key | Type | Description |
|---|
| Query caller | SQLQueryColumnCaller | This modules is responsible of establishing the connection between Fast2 and the designated database |
| Source attributes | String/Pattern map | Key: Desired column for where clause; Value: Source Document data to use for query |
Optional settings
| Key | Type | Description | Default value |
|---|
| Use PreparedStatements | Boolean | Use PreparedStatements instead of plain SQL statements | |
| Target attributes | String/Pattern map | <key, value> set where 'key' refers to the SQL name of the data, and 'value' refers the name of the data in the Fast2 dataset. | |
| Reset target data | Boolean | Clean content when target already exists | true |
| SQL column types | String/String map | <key, value> where 'key' is the SQL data name, and 'value' is its type. Supported types are : String, float, int, Date. | |
| SQL query | String | Select precisely data you want to extract through a classic SQL query. All retieved values will be attached to the document dataset based on the data listed in the 'Target attributes' configuration section. | |
SingleCallTask - Call a task only once per campaign
This task will be useful to perform a given subtask only once in a map execution. You choose to call this subtask at the very begining of the campaign, or at its very end.
Mandatory settings
| Key | Type | Description |
|---|
| Subtask | Task | The task to call only once in the campaign execution |
Optional settings
| Key | Type | Description | Default value |
|---|
| Call at end | Boolean | Execute the subtask when the first punnet is processed | false |
| Call at begining | Boolean | Execute the subtask when the first punnet is processed | false |
SleepTask - Blocks punnet on thread for a given period of time
Task blocking a thread per punnet to wait some time before processing the punnet, without updating its state or metadata.
As the thread is asleep for a defined time, all tasks are slowed down.
Optional settings
| Key | Type | Description | Default value |
|---|
| Sleep time | Integer | In milliseconds | 500 |