1 19 20 package org.efs.openreports.services; 21 22 import java.util.HashMap ; 23 24 import org.apache.log4j.Logger; 25 import org.efs.openreports.objects.ReportParameter; 26 import org.efs.openreports.objects.ReportParameterValue; 27 import org.efs.openreports.providers.ParameterProvider; 28 import org.efs.openreports.services.info.ParameterValueInfo; 29 30 35 36 public class ParameterServiceImpl implements ParameterService 37 { 38 private static Logger log = Logger.getLogger(ParameterServiceImpl.class.getName()); 39 40 private ParameterProvider parameterProvider; 41 42 public ParameterServiceImpl() 43 { 44 log.info("ParameterServiceImpl: Started"); 45 } 46 47 52 public ParameterValueInfo[] getParameterValues(String paramName) 53 { 54 if (paramName == null) return null; 55 56 ParameterValueInfo[] paramValues = null; 57 58 try 59 { 60 ReportParameter parameter = parameterProvider.getReportParameter(paramName); 61 62 if (parameter != null 63 && (parameter.getType().equals(ReportParameter.QUERY_PARAM) 64 || parameter.getType().equals(ReportParameter.LIST_PARAM) || parameter 65 .getType().equals(ReportParameter.BOOLEAN_PARAM))) 66 { 67 ReportParameterValue[] reportParamValues = parameterProvider 69 .getParamValues(parameter, new HashMap ()); 70 71 paramValues = new ParameterValueInfo[reportParamValues.length]; 72 73 for (int i = 0; i < reportParamValues.length; i++) 74 { 75 ParameterValueInfo paramInfo = new ParameterValueInfo(); 76 paramInfo.setId(reportParamValues[i].getId().toString()); 77 paramInfo.setDescription(reportParamValues[i].getDescription()); 78 79 paramValues[i] = paramInfo; 80 } 81 } 82 } 83 catch (Exception e) 84 { 85 log.warn(e); 86 } 87 88 return paramValues; 89 } 90 91 public void setParameterProvider(ParameterProvider parameterProvider) 92 { 93 this.parameterProvider = parameterProvider; 94 } 95 } 96 | Popular Tags |