Boomi Tips: Utilizing ExecutionTask in Custom Scripting

If you’re a Dell Boomi integration developer you should already be familiar with the ExecutionUtil class. This class defines and/or retrieves any properties value by using Custom Scripting step in Data Process shape (e.g, process property, document property, dynamic process property and dynamic document property).

 

Note that today our ur focus isn’t on ExecutionUtil. Instead, we’ll be focusing on another hidden class that can be utilized in our integration process. This class is called com.boomi.execution.ExecutionTask.

 

ExecutionTask allows you to access more useful information such as:

  • Execution Id
  • Parent Execution Id
  • Process Id
  • Parent Process Id
  • Check whether a process is called a subprocess

Of course, you can now access some of the high-level execution information by using Execution Properties. You’ll also have the ability to access some low-level details is definitely a plus for me 🙂

 

Here is an example:

 

import java.util.Properties;
import java.io.InputStream;
import com.boomi.execution.*;

//get execution id of a current process
String childExecutionId = ExecutionManager.getCurrent().getExecutionId();

//get parent execution id from a subprocess
String parentExecutionId = ExecutionManager.getCurrent().getTopLevelExecutionId();

//indicate if current execution is being called as subprocess, note that the start shape of child process can't be passthrough
boolean isNested = ExecutionManager.getCurrent().isNested();

 

If you want to get more information, you can always look into the class itself.

 

Please note that with great power comes great responsibility and this is not an official API supported by Dell Boomi. So, please use it at your own risk 😉