Processors

Introduction

Processors are the actual actions that are being executed. They are valid runnable JavaScript code.

Processor Overview

Each Process has a MongoDB generated ID unique to the processor. Processors can also have a more human-readable unique ID that can be used to reference the processor. Processors that requires identity can only be accessed by users that have been logged into the system.

Processor Types

At the most basic level, there are two types of processors. Standalone and Non-Standalone processors.

Standalone Processors

These are processors that do not need user interaction to be run. They run automatically either when a step is being executed or when they are used as the fetch processor or when they are called directly using http. They can be called directly using http using the following url scheme:

https://{DYNAMO_DOMAIN}/api/processors/run/{PROCESSOR_ID}
where DYNAMO_DOMAIN is the web address for Dynamo web server. PROCESSOR_ID is either the stringified MongoDB _id for the processor or the human-readable unique ID for the processor.

Non-Standalone Processors

These are the exact opposite of the standalone processors and can only be run on user interaction. This processor is only run when the user clicks the Submit/ Proceed button for a particular step.

Fetch Processors

Fetch processors can be seen as init actions that are set on processes. They are run first in a process' execution and are used to configure the initial data needed for a process to run correctly.

Processor Object

Property NameTypeDescription
_idMongo ObjectIDMongoDB generated ID for the Processor
titleStringThe human-readable title for the processor.
uidStringA human-readable unique ID for the processor.
codeStringProcessor code written in JavaScript.
_codeStringActual processor code that will be executed. This code has been transformed and wrapped in try-catches.
requiresIdentityBooleanDetermines whether a processor can only be accessed by logged in users or also by anonymous guests.
standaloneBooleanDetermines if the processor will be a standalone processor or not.
_referencesArrayArray of strings that are the UIDs of libraries that are being referenced in the processor.