Skip to main content

PEX Business Processes

Business processes allow you to define business logic, including routing and message transformation. Business processes receive messages from other business hosts in the production for processing.

For general information related to all production components written in an external language, see About Business Hosts and Adapters.

Developing a Business Process

To write business process in an external language, extend one of the following classes:

Language Class
Java com.intersystems.enslib.pex.BusinessProcess
.NET InterSystems.EnsLib.PEX.BusinessProcess
Python iris.pex.BusinessProcess

Implementing Abstract Methods

After extending the business process class, you need to implement some abstract methods. For details on these methods, see PEX API Reference.

Persistent Properties

Within InterSystems IRIS, native business processes are persistent objects. For the lifespan of these business processes, properties are stored and are accessible during each callback. By default, a PEX business process lacks this characteristic; each method is called in a separate instance and the values of variables are not preserved. However, you can mimic the persistence of a native business process by making the properties of the PEX business process persistent. Use the following syntax to persist a property of a PEX business process:

// Use annotation to create a persistent property
// Strings, primitive types, and their boxed types can be persisted

@Persistent
public integer runningTotal = 0;
// Use attribute to create a persistent property
// Strings, primitive types, and their boxed types can be persisted

[Persistent]
public int runningTotal = 0;
#Set class variable to create persistent property
#Only variables of types str, int, float, bool and bytes can be persisted

PERSISTENT_PROPERTY_LIST=["myVariable1","myVariable2"]

Within InterSystems IRIS, persistent properties are saved in the corresponding instance of the business process. Persistent properties are restored before each callback and are saved after each callback.

Using the Business Process

Once you have finished developing the remote class of the PEX business process, you can complete the following steps to integrate the business process into an interoperability production:

  1. Register the PEX business process by navigating to Interoperability > Configure > Production EXtensions Components. For details, see Registering a PEX Component.

  2. Open the production and use the standard wizard to add a business process. In the Business Process Class field, select the ObjectScript proxy class of the PEX component. By default, the name of this proxy class matches the remote class, but a custom name might have been defined when the component was registered.

Feedback