public static void setFactsAndResults(HttpServletRequest request,
RuleMediatorDescription mediatorDescription,
String id) {
HttpSession session = request.getSession();
XPathFactory xPathFactory = XPathFactory.getInstance();
String inputCountParameter = request.getParameter(id + "Count");
if (inputCountParameter != null && !"".equals(inputCountParameter)) {
int inputCount = 0;
try {
inputCount = Integer.parseInt(inputCountParameter.trim());
for (int i = 0; i < inputCount; i++) {
String name = request.getParameter(id + "Name" + i);
String type = request.getParameter(id + "Type" + i);
if (type != null && !"".equals(type)) {
ResourceDescription description = new ResourceDescription();
if (name != null && !"".equals(name)) {
description.setName(name.trim());
}
description.setType(type.trim());
String valueID = id + "Value" + i;
String value = request.getParameter(valueID);
if (value != null && !"".equals(value.trim())) {
value = value.trim();
String typeSelector = request.getParameter(id + "TypeSelection" + i);
boolean isExpression = typeSelector != null &&
"expression".equals(typeSelector.trim());
boolean isKey = typeSelector != null &&
"key".equals(typeSelector.trim());
if (isExpression) {
description.setExpression(xPathFactory.createSynapseXPath(valueID,
value.trim(), session));
} else if (isKey) {
description.setKey(value);
} else {
description.setValue(value);