This class is a subclass of DSEServerOperation and implements the ProcessorOperation interface. DSEHtmlProcessorOperation acts as a intermediary between the channel driver handler (in this case the HtmlRequestHandler) and the Processor. This class is also responsible for calling a subsequent processor if a state is of the "subFlow" type.
This class extends ProcessorManager to handle the creation and saving of the process based on the HTML Channel requirements. The instances of the processors are not kept in memory between session requests. Instead, their basic information and context are saved and the processor is reinitialized every time a request for the same processor arrives. This allows a customer to customize the solution as an environment with no server affinity.
DSEProcessor class implements a state machine and allows the externalization of a process flow. DSEHtmlProcessor extends DSEProcessor to provide additional behavior required by HTML Channel, such as the ability to update the context with a KeyedCollection with request's data, a different initialization, and the handling of a parent processor. DSEHtmlProcessor is an abstract class and needs to be subclassed with any additional behavior required.
The HtmlProcessorInfo class is a data holder for the processor's name, the current state, and the ID of the parent processor if it exists. A "processorTable" hashtable is created in the session context with the processorId as key and the HtmlProcessorInfo as value.
The APIs for a ProcessorOperation class defined by this interface are execute(String eventName), updateContext(KeyedCollection requestDataKColl), and the getter and setter for the processor object. The eventName passed is extracted from the request. There needs to be coordination between the creation of the JSP and the externalized definition of the process. For more information refer to the Flow processor example.
The API for a ProcessorOperation class defined by this interface is xValidate( Context, String).