Overview

Generated readmulti operations in IBM Cúram Social Program Management servers execute SQL SELECT statements and return the resulting record set as an ArrayList. In fact, readmulti operations are implemented as two very distinct pieces:

The Business Object Layer function is a specialization of a general class of functions called readmulti operations, which can perform arbitrary processing on the contents of SQL cursors. You can view the definitions of these function classes in curam.util.dataaccess.ReadMultiOperation. This ReadMultiOperation is the parent abstract class, while curam.util.dataaccess.StandardReadMultiOperation is a concrete subclass providing an implementation of "normal" readmulti functions.

"Specialized readmulti operations" are simply hand-crafted functions "plugged into" the Data Access Layer using generated helper classes. The pattern in use here is similar to the Visitor design pattern described in Design Patterns by Gamma et al. Readmulti operations are "plugged into" the appropriate Data Access Layer functions by generated readmulti helper classes, which insulate the operation from knowledge about the specific Data Access Layer functions used.