Integer objParId = new Integer(objParIdStr);
IObjParuseDAO objParuseDAO = DAOFactory.getObjParuseDAO();
List dependencies = objParuseDAO.loadObjParuse(objParId, paruse.getUseID());
if (dependencies != null && dependencies.size() > 0) {
if (dependencies.size() == 1) {
ObjParuse objparuse = (ObjParuse) dependencies.get(0);
list = filterForCorrelation(list, objparuse, request, parametersMap, errorHandler);
} else if (dependencies.size()==2) {
ObjParuse objpuse1 = (ObjParuse) dependencies.get(0);
ObjParuse objpuse2 = (ObjParuse) dependencies.get(1);
list = evaluateSingleLogicOperation(objpuse1, objpuse2, list, request, parametersMap, errorHandler);
} else {
// build the expression
int posinlist = 0;
String expr = "";
Iterator iterOps = dependencies.iterator();
while(iterOps.hasNext()) {
ObjParuse op = (ObjParuse) iterOps.next();
expr += op.getPreCondition() + posinlist + op.getPostCondition() + op.getLogicOperator();
posinlist ++;
}
expr = expr.trim();
expr = "(" + expr;
expr = expr + ")";