Map<String, List> reportData = this.report.runNewSearch(this);
this.cachedData = new HashMap<String,List>();
for (String outputName : this.report.getOutputs().keySet()) {
Output output = this.report.getOutputs().get(outputName);
OutputElement outputElement = output.getOutputElement();
if (!outputElement.isValueList()) {
// remove any adapter that may have been present from before:
this.valueListAdapters.remove(outputName);
List outputData = reportData.get(outputName);
if ((outputElement.getMaxRowsForCache() <= 0) ||
outputElement.getMaxRowsForCache() > outputData.size()) {
// cache all data:
this.cachedData.put(outputName,outputData);
} else if (outputData.size() == outputElement.getMaxRowsForDisplayTag()) {
// use valuelist:
createAndAddAdapter(output,parameterMap);
} else {
// no cached data
// remove cachedData: