The execution settings

The executionSettings element is part of the context element of the operator model. The executionSettings element is after the metrics element within the context element. It describes the execution settings of the operator.

Listing 18: Execution settings type as part of the operator context

Listing 18 gives the basic structure.

<xs:complexTypename="javaOpContextType">
  <xs:sequence>
    ...
    <xs:element name="metrics" type="metricsType" minOccurs="0" maxOccurs="1"/>
    <xs:element name="executionSettings" type="javaOpExecutionSettingsType"/>
  </xs:sequence>
</xs:complexType>
          
<xs:complexType name="javaOpExecutionSettingsType">
  <xs:sequence>
    <xs:element name="className" type=xs:token"/>
    <xs:element name="vmArgs" type="javaOpVMArgsType" minOccurs="0" maxOccurs="1"/>
  </xs:sequence>
</xs:complexType>
            
<xs:complexType name="javaOpVMArgsType">
  <xs:sequence>
    <xs:element name="vmArg" type="xs:string" minOccurs="0' 'maxOccurs="unbounded"/>
  </xs:sequence>
</xs:complexType>

The executionSettings element contains two subelements: className and vmArgs. The className element specifies the name of the class that represents the operator. The vmArgs element specifies the set of JVM arguments that are required by the operator.

Listing 19: Sample execution settings XML segment

Listing 19 gives a sample XML segment for the execution settings.

<executionSettings>
  <className>com.acme.streams.MyOp</className>
  <vmArgs>
    <vmArg>-Dfoo=true</vmArg>
    <vmArg>-Xmx32m</vmArg>
  </vmArgs>
<executionSettings>      

In the example that is given in Listing 19, the className element specifies the namespace qualified class name for the operator. The path to the .jar file or the directory that contains the class files is specified as part of the libraryDependencies element, described in the next section.