Differences from the C++ operator models
A number of elements are not allowed in Java™ operator models, but they can appear in C++ operator models.
- customOutputFunctions
- providesSingleThreadedContext
- incrementalCompilationStrategy
- allowCustomLogic
- rewriteAllowed
- portScope
The expressionMode element can take only one of three attribute values: Attribute, AttributeFree, or CustomLiteral.
- className
- classLibrary
- generated
- VmArg
Under the inputPortOpenSet element, the following subelements are not allowed within a Java operator model: tupleMutationAllowed. The tuple mutation configuration for the input and output ports do not apply to Java operators, as the calls between fused Java operators do not use the same physical memory location for the tuple that is being passed.
- tupleMutationAllowed
- autoAssignment
- completeAssignment
- rewriteAllowed
- expressionMode
- outputFunctions
- outputAssignmentPortScope
Under the managedLibrary element, the following subelements are not allowed in a Java operator model: lib and includePath. These elements are specific to C++ libraries. The Java operators support only the libPath and the command elements. The library path is used to specify the path to the .jar files or the directories that contain the class files. If multiple library paths are specified, then the search order for .jar files and classes is the same order in which the paths are specified in the operator model. The command element is used to rely on an external script to fetch the library paths, and operates the same way as the one used for the C++ operator models.