com.cgiams.esl.fp
Class FlowProcessor

java.lang.Object
  extended bycom.cgiams.esl.fp.FlowProcessor

public class FlowProcessor
extends java.lang.Object

This class implements all of the necessary logic to carry out a CDX Network Node Flow. This class relies on a database model that needs to be in place at the location defined by the DataManager. Here is an example of its use:

 FlowProcessorFactory lo_flow_processor_factory = FlowProcessorFactory.getInstance();
 FlowProcessor lo_flow_processor = lo_flow_processor_factory.getFlowProcessor("c:/config.ini");
 lo_flow_processor.performSubmit("FRS/Add-Update");
 ...
 


Modification History
Programmer Date Description
Jim Matysczak 03/18/2005 Original Author
Scott Bowers April 2005 1. Refactored perform() method into smaller components to more easily introduce additional enhancements.
2. Added schema validation capabilities during XML document generation in order to catch validation errors before submitting.
3. Added the ability to use multiple temporary files during the processing of detailed queries. Schema validation occurs on the temporary files to avoid performance and memory problems of validating a potentially large final XML document.
Luke Gentry 05/26/2006 Enhance so that file created after stylesheet translation does not have to be validated. (@@: SDWIS lgentry 2.1 05/26/2006)
Luke Gentry 06/08/2006 Make EIExport class a standard export manager. (@@: SDWIS lgentry 06/08/2006)


Field Summary
static java.lang.String EXEC_ID_ARG
          Constant argument name for the Execution id
static int si_return_data_set
          Indicates that the perform method should return the data set as a byte[].
static int si_return_message
          Indicates that the perform method should return a String message.
static java.lang.String ss_cache_flag_cache
          The cache flag value that indicates that Flow Submittal configuration information should be cached.
static java.lang.String ss_cache_flag_nocache
          The cache flag value that indicates that Flow Submittal configuration information should NOT be cached.
 
Method Summary
 byte[] performQuery(java.lang.String as_submittal_code, int ai_start_row, int ai_max_rows, java.util.Map ao_arguments)
          This method will respond to a standard CDX Network Node Query operation.
 java.lang.String performSolicit(java.lang.String as_submittal_code, java.lang.String as_url, java.lang.String as_transaction_id, java.util.Map ao_arguments)
          This method will perform a standard CDX Network Node Solicit operation.
 java.lang.String performSubmit(java.lang.String as_submittal_code)
          This method will perform a standard CDX Network Node Submit operation.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

si_return_message

public static final int si_return_message
Indicates that the perform method should return a String message.

See Also:
Constant Field Values

si_return_data_set

public static final int si_return_data_set
Indicates that the perform method should return the data set as a byte[].

See Also:
Constant Field Values

ss_cache_flag_cache

public static final java.lang.String ss_cache_flag_cache
The cache flag value that indicates that Flow Submittal configuration information should be cached. Its value is Y.

See Also:
Constant Field Values

ss_cache_flag_nocache

public static final java.lang.String ss_cache_flag_nocache
The cache flag value that indicates that Flow Submittal configuration information should NOT be cached. Its value is N.

See Also:
Constant Field Values

EXEC_ID_ARG

public static final java.lang.String EXEC_ID_ARG
Constant argument name for the Execution id

See Also:
Constant Field Values
Method Detail

performQuery

public byte[] performQuery(java.lang.String as_submittal_code,
                           int ai_start_row,
                           int ai_max_rows,
                           java.util.Map ao_arguments)
                    throws FlowProcessorException
This method will respond to a standard CDX Network Node Query operation. It will take the parameters specified by the caller and return the appropriate data set.

Parameters:
as_submittal_code - The name of a Flow Submission as defined by the SUBMITTAL_CODE column in FP_SUBMITTAL.
ai_start_row - The zero based row id indicating the first row to be returned.
ai_max_rows - The maximum number of rows to return.
ao_arguments - The arguments specified by the caller.
Returns:
The appropriate data set.
Throws:
FlowProcessorException - If any error occurs.

performSolicit

public java.lang.String performSolicit(java.lang.String as_submittal_code,
                                       java.lang.String as_url,
                                       java.lang.String as_transaction_id,
                                       java.util.Map ao_arguments)
                                throws FlowProcessorException
This method will perform a standard CDX Network Node Solicit operation.

Parameters:
as_submittal_code - The name of a Flow Submission as defined by the SUBMITTAL_CODE column in FP_SUBMITTAL.
as_url - The URL to submit the data to. This can be null.
as_transaction_id - The Transaction ID that was returned to the caller. This can be null.
ao_arguments - The arguments specified by the caller.
Returns:
A formatted String containing logging and result information.
Throws:
FlowProcessorException - If any error occurs.

performSubmit

public java.lang.String performSubmit(java.lang.String as_submittal_code)
                               throws FlowProcessorException
This method will perform a standard CDX Network Node Submit operation.

Parameters:
as_submittal_code - The name of a Flow Submission as defined by the SUBMITTAL_CODE column in FP_SUBMITTAL.
Returns:
A formatted String containing logging and result information.
Throws:
FlowProcessorException - If any error occurs.