This module contains functions that allow you to interact with the underlying system.

To use this module, you must import it to your DataWeave code, for example, by adding the line import * from dw::System to the header of your DataWeave script.

Functions

envVar

envVar(String): String | Null

Returns an environment variable with the specified name or null if the environment variable is not defined.

Parameters
Name Description

variableName

Provides the name of the environment variable.

Example

This example returns a Mac command console (SHELL) path and returns null on FAKE_ENV_VAR (an undefined environment variable). SHELL is one of the standard Mac environment variables. Also notice that the import command enables you to call the function without prepending the module name to it.

Source
1
2
3
4
5
6
7
8
9
10
%dw 2.0
import * from dw::System
output application/json
---
{
    "envVars" : [
       "real" : envVar("SHELL"),
       "fake" : envVar("FAKE_ENV_VAR")
    ]
}
Output
1
2
3
4
5
6
7
8
"envVars": [
  {
    "real": "/bin/bash"
  },
  {
    "fake": null
  }
]

envVars

envVars(): Dictionary<String>

Returns all of the environment variables defined in the host system.

Example

This example returns a Mac command console (SHELL) path. SHELL is one of the standard Mac environment variables. To return all the environment variables, you can use dw::System::envVars().

Source
1
2
3
4
5
%dw 2.0
import dw::System
output application/json
---
{ "envVars" : dw::System::envVars().SHELL }
Output
1
{ "envVars": "/bin/bash" }