Tool connectors in Warewolf are used to perform common tasks or data manipulation inside your service or microservice. You do not need to go out of Warewolf and call a data connector to perform the task for you.
Tools give a high degree of manipulation and data mapping capabilities.
Tools are also used to logically construct services in flow based fashion so you can have excellent data routing and logical processing inside your service.
Tools are used to extend the functionality of services and allow for rapid development and ease of understanding.
Tools contribute to a low rate of error and low cognitive overhead as they do the heavy lifting for you. This lets you focus on the big picture and work extremely fast.
An example use case for each tool can be found in the Examples folder in the Warewolf Studio. You can get information on each tool by looking at the “What does this do?” section at the bottom left of the Studio, when an area on the tool is selected.
Below is a list of tool connectors in Category order:
Control Flow
Decision
Use the Decision flow tool to check if something is True or False and execute different branches based on that decision. This tool’s example workflow can be found in: Examples\ Control Flow – Decision
Switch
Use the Switch tool when you need to take a different action depending on the value of a variable. Just drag another flow arm to add another possibility. This tool’s example workflow can be found in: Examples\ Control Flow – Switch
Sequence
Use the sequence tool to group steps into a single step in a workflow. This tool’s example workflow can be found in: Examples\Control Flow – Sequence
Gate
Use the Gate tool when you need to stop, retry, rollback to previous gates on error.
Manual Resumption
Use the Manual Resumption tool when you need to resume execution of a workflow before the time scheduled in the Suspend Execution tool.
Suspend Execution
Use the Suspend Execution tool when you need to suspend execution of a workflow and persist the data so that the workflow can be resumed with the persisted data at the time scheduled in the tool.
Data
Assign Object
Use the Assign Object tool to manipulate Object data. You can use the Assign Object tool inside a Select & Apply tool for more fine-grained control of the manipulation. This tool’s example workflow can be found in: Examples\ Data – Assign Object
Data Merge
Use the Data Merge to join recordset data together. Very handy for making flat files. This tool’s example workflow can be found in: Examples\ Data – Data Merge
Base Convert
Use the Base Conversion tool to convert data From Text, Base64, Hex and Binary to Text, Base64, Hex and Binary. This tool’s example workflow can be found in: Examples\ Data – Base Conversion
Case Convert
Use the Case Conversion tool to convert or change the case of text. This tool’s example workflow can be found in: Examples\ Data – Case Conversion
Data Split
Use the Data Split to break up a variable into multiple variables based on some character or index, a new line or a tab etc. This tool’s example workflow can be found in: Examples\ Data – Data Split
Find Index
Use the Find Index tool to find the numeric index of one or more occurrences of something in that variable. This tool’s example workflow can be found in: Examples\ Data – Find Index
Replace
Use the Replace tool to find and replace information in a variable / recordset. And return the count of how many were replaced. This tool’s example workflow can be found in: Examples\ Data – Replace
Assign
Use the Assign tool to set the value of a variable. This tool’s example workflow can be found in: Examples\ Data – Assign
Database
My SQL
Use the MySQL tool to execute against any MySQL Database. This tool will expose the stored procedures etc. that are already set up on the database. It allows you to map Warewolf data into, execute and then map the Warewolf data out of them.
ODBC
Use the ODBC tool to execute against any ODBC Data Source. This tool will execute your commands against the ODBC on your computer. It allows you to map Warewolf data into, execute then map Warewolf data out of them.
Oracle
Use the Oracle tool to execute against any Oracle database. This tool will expose the stored procedures etc. that are already setup on the database and allow you to map Warewolf data into, execute and then map Warewolf data out of them.
PostgreSQL
Use the PostgreSQL tool to execute against any PostgreSQL database. This tool will expose the stored procedures etc. that are already setup on the database and allow you to map Warewolf data into, execute and then map Warewolf data out of them.
SQL Bulk Insert
Use the Bulk Insert tool to move more than one record at a time into Microsoft SQL Server. This tool exposes the built-in functionality options and is highly performant when used exclusively with the Recordset data going in.
SQL Server
Use the SQL tool to execute against any SQL Database. This tool will expose the stored procedures etc. that are already setup on the database. It allows you to map Warewolf data into, execute then map Warewolf data out of them.
Redis Cache
Use the Redis Cache tool to store data by key in the cache.
Redis Remove
Use the Redis Remove tool to remove existing key with data from cache.
SMTP Send
Use the SMTP send tool to send an email from a SMTP server e.g. Gmail. This tool’s example workflow can be found in: Examples\ Email – SMTP send
Exchange Send
Use the exchange send tool to email from an Exchange email account. This tool’s example workflow can be found in: Examples\ Email – Exchange send
File and Folder
Create
Use the Create tool to create folders or files. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Create
Copy
Use the Copy tool to make a copy of a file or folder. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Copy
Delete
Use the Delete tool to delete a file or a folder. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Delete
Move
Use the Move tool to move folders or files from one location to another. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder -Move
Read Folder
Use the Read Folder tool to read the list of files in a folder into a variable. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Read Folder
Read File
Use the Read File tool to put the contents of a file into a variable. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Read File
Write File
Use the Write File tool to put the contents of a variable into a physical file on a disk. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Write File
Rename
Use the Rename tool to rename a file or folder. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Rename
Unzip
Use the Unzip tool to decompress a Zip file into a folder. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Unzip
Zip
Use the Zip tool to compress a folder or a file into a Zip archive. (File System, UNC, FTP, FTPS, SFTP) This tool’s example workflow can be found in: Examples\ File and Folder – Zip
HTTP Web Methods
DELETE
Use the HTTP Web DELETE tool to execute a web DELETE request. You can specify headers and other relevant data. This tool’s example workflow can be found in: Examples\ HTTP Web Methods – Delete
GET
Use the HTTP Web GET tool to execute a web GET request. You can specify headers and other relevant data.This tool’s example workflow can be found in: Examples\ HTTP Web Methods – Get
POST
Use the HTTP Web POST tool to execute a web POST request. You can specify headers and other relevant data. This tool’s example workflow can be found in: Examples\ HTTP Web Methods – Post
PUT
Use the HTTP Web PUT tool to execute a web PUT request. You can specify headers and other relevant data. This tool’s example workflow can be found in: Examples\ HTTP Web Methods – Put
Loop Constructs
For Each
Use the For Each tool to run something a few times. Very handy for processing recordset or specific records. This tool’s example workflow can be found in: Examples\ Loop Constructs – For Each
Select & Apply
Use the Select & Apply tool to update Recordset and Object data without having to map the data out first. You can perform any number of updates or combinations of updates by using it in conjunction with the sequence tool. This tool’s example workflow can be found in: Examples\ Loop Constructs – Select and Apply
Recordset
Length
Use the Records Length tool to get the length of the recordset. This tool’s example workflow can be found in: Examples\ Recordset – Records Length
Find Records
Use the Find Records tool to return indexes of records that match a given criteria. This tool’s example workflow can be found in: Examples\ Recordset – Find Records
Delete
Use the Delete Records tool to remove records from a recordset. This tool’s example workflow can be found in: Examples\ Recordset – Delete Records
Sort
Use the Sort Records tool to order records either forwards or backwards. This tool’s example workflow can be found in: Examples\ Recordset – Sort Records
Count
Use the Count Records tool to return the number of records in a recordset. This tool’s example workflow can be found in: Examples\ Recordset – Count Records
Unique Records
Use the Unique Records tool to return all unique records in a recordset. This tool’s example workflow can be found in: Examples\ Recordset – Unique Records
Advanced Recordset
Use the Advanced Recordset tool to write and execute Structured Query Language (SQL) against any combination of Warewolf Recordsets already set up. This tool’s example workflow can be found in: Examples\ Advanced Recordset – Delete, Insert, Select and Update
Resources
Service
Use the Service tool to execute another Warewolf service. Or, drag and drop directly from the Explorer.
Com DLL
Use the Com DLL tool to connect to, and execute any, Com DLL from inside your flow-based service. This tool’s example workflow can be found in: Examples\ Resources – Com DLL
DotNet DLL Connector
Use the DotNet DLL tool to connect to, and execute any, DotNet DLL from inside your flow-based service. This tool’s example workflow can be found in: Examples\ Resources – DotNet DLL Connector
WCF
Use the WCF tool, to execute any pre-existing WCF services you may have access to. If your service returns any data you will be able to map this data into Warewolf variables, to use later in your flow. This tool’s example workflow can be found in: Examples\ Resources – WCF
Scripting
CMD Script
Use the CMD tool to execute command line commands like a batch file. This tool’s example workflow can be found in: Examples\ Scripting – CMD Script
JavaScript
JavaScript tool to execute JavaScript Code. This tool’s example workflow can be found in: Examples\ Scripting – JavaScript
Python
Use the Python tool to execute Python Code. This tool’s example workflow can be found in: Examples\ Scripting – Python
Ruby
Use the Ruby tool to execute Ruby Code. This tool’s example workflow can be found in: Examples\ Scripting – Ruby
SharePoint
Copy File
Use the SharePoint Copy File tool to copy files from a SharePoint Server. Also works with SharePoint Online.
Create list Item(s)
Use the SharePoint Create List Item tool to add an entry to a SharePoint list. Also works with SharePoint Online.
Delete File
Use the SharePoint Delete File tool to delete files from a SharePoint Server. Also works with SharePoint Online.
Delete list Item(s)
Use the SharePoint Delete List Item tool to delete an entry from a SharePoint list. Also works with SharePoint Online.
Download File
Use the SharePoint Download File tool to download files from SharePoint Server. Also works with SharePoint Online.
Upload File
Use the SharePoint Upload File tool to upload files to a SharePoint Server. Also works with SharePoint Online.
Move File
Use the SharePoint Move File tool to move files on a SharePoint Server. Also works with SharePoint Online.
Read Folder
Use the SharePoint Read Folder tool to read folder contents on a SharePoint Server. Also works with SharePoint Online.
Read list Item(s)
Use the SharePoint Read List Item tool to Read the values off a SharePoint list. Also works with SharePoint Online.
Update list Item(s)
Use the SharePoint Update List Item tool to update an entry on a SharePoint list. Also works with SharePoint Online.
Storage: Dropbox
Delete
Use the Dropbox Delete tool to remove files or folders from your Dropbox online account.
Download
Use the Dropbox Download tool to pull files and folders down from your Dropbox online account onto your system.
List Contents
Use the Dropbox List Contents tool to read the file, folder or file and folder information of a folder and or subfolders in your Dropbox online account.
Upload
Use the Dropbox Upload tool to upload from your system to your Dropbox online account.
Utility
Aggregate Calculate
To perform a calculation, put the calculation in here in BODMAS format. To use the aggregate functions, use the recordset (*) notation e.g. SUM([[Staff(*).Salaries]]) will perform one calculation and give one result that is the total of all the Salaries fields in the Staff() recordset. Create Json
Use the Create Json tool to create Json data. This tool’s example workflow can be found in: Examples\ Utility – Create Json
Calculate
Use the Calculate tool to apply Excel like functions and mathematical procedures. This tool’s example workflow can be found in: Examples\ Utility – Calculate
Date and Time
Use the Date and Time tool to change a date’s format and add or subtract a piece of time. This tool’s example workflow can be found in: Examples\ Utility – Date and Time
Date and Time Difference
Use the Date and Time Difference tool to calculate the difference in time of two date times. This tool’s example workflow can be found in: Examples\ Utility – Date and Time Difference
System Information
Use the System Information tool to get local information specific to the machine that is running the workflow. This tool’s example workflow can be found in: Examples\ Utility – System Information
Format Number
Use the format number tool for rounding and showing decimals. This tool’s example workflow can be found in: Examples\ Utility – Format Number
Random
Use the Random tool to generate random numbers, letters, both or GUIDs. This tool’s example workflow can be found in: Examples\ Utility – Random
Web Request
Use the Web Request tool to execute a URL and return the server response. This tool’s example workflow can be found in: Examples\ Utility – Web Request
Comment
Use the Comment tool to leave notes and information within your workflow. This tool’s example workflow can be found in: Examples\ Utility – Comment Xpath
Query XML data using XPath 2.0 syntax and then use the results in other parts of your workflow. This tool’s example workflow can be found in: Examples\ Utility – Xpath
Rabbit MQ Publish
Use the Rabbit MQ Publish tool to publish messages to a Rabbit MQ queue. The queue will be created if it does not exist. This tool’s example workflow can be found in: Examples\ Utility – Rabbit MQ Publish
Rabbit MQ Consume
Use the Rabbit MQ Consume tool to read messages off a Rabbit MQ server’s queue. This tool’s example workflow can be found in: Examples\ Utility – Rabbit MQ Consume