1 package com.calipso.reportgenerator.userinterface; 2 3 import com.calipso.reportgenerator.common.ReportSpec; 4 import com.calipso.reportgenerator.common.ReportFilterSpec; 5 import com.calipso.reportgenerator.common.LanguageTraslator; 6 import com.calipso.reportgenerator.reportdefinitions.types.FilterDefinitionFilterTypeType; 7 import com.calipso.reportgenerator.reportdefinitions.types.ParameterValueFilterParameterType; 8 import com.calipso.reportgenerator.reportcalculator.FilterOperation; 9 10 import java.util.Vector ; 11 import java.util.Collection ; 12 import java.util.Iterator ; 13 import java.util.Map ; 14 15 20 21 public class UPCollection { 22 23 private ReportSpec reportSpec; 24 private Vector upCollection; 25 private Map existingParams; 26 27 public UPCollection(ReportSpec reportSpec, Map existingParams) { 28 this.reportSpec = reportSpec; 29 this.existingParams = existingParams; 30 } 31 32 public Vector getUpCollection() { 33 if(upCollection == null) { 34 upCollection = new Vector (); 35 initializeCollection(); 36 } 37 return upCollection; 38 } 39 40 private void initializeCollection() { 41 Collection filterCol = reportSpec.getEditFilterSpecs(); 42 for(Iterator filterColIterator = filterCol.iterator() ; filterColIterator.hasNext() ; ){ 43 ReportFilterSpec filterDefinition = (ReportFilterSpec) filterColIterator.next(); 44 if(filterDefinition.getVisual() && !isPreset(filterDefinition)){ 45 switch(filterDefinition.getFilterType().getType()){ 46 case FilterDefinitionFilterTypeType.RANGE_TYPE: 47 upCollection.add(new UPRangeElement(filterDefinition, reportSpec, "FROM", "TO", 48 LanguageTraslator.traslate("146"), LanguageTraslator.traslate("147"))); 49 break; 50 case FilterDefinitionFilterTypeType.EQUALTO_TYPE: 51 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 52 LanguageTraslator.traslate("150"))); 53 break; 54 case FilterDefinitionFilterTypeType.GREATERTHAN_TYPE: 55 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 56 LanguageTraslator.traslate("150"))); 57 break; 58 case FilterDefinitionFilterTypeType.LESSTHAN_TYPE: 59 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 60 LanguageTraslator.traslate("150"))); 61 break; 62 case FilterDefinitionFilterTypeType.BEGINWITH_TYPE: 63 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 64 LanguageTraslator.traslate("150"))); 65 break; 66 case FilterDefinitionFilterTypeType.ENDWITH_TYPE: 67 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 68 LanguageTraslator.traslate("150"))); 69 break; 70 case FilterDefinitionFilterTypeType.INCLUDES_TYPE: 71 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 72 LanguageTraslator.traslate("150"))); 73 break; 74 case FilterDefinitionFilterTypeType.RANKING_TYPE: 75 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUE", 76 LanguageTraslator.traslate("150"))); 77 break; 78 case FilterDefinitionFilterTypeType.IN_TYPE: 79 upCollection.add(new UPValueElement(filterDefinition, reportSpec, "VALUES", 80 LanguageTraslator.traslate("390"))); 81 break; 82 case FilterDefinitionFilterTypeType.EXCLUDEGROUP_TYPE: 83 upCollection.add(new UPExcludeElement(filterDefinition, reportSpec)); 84 break; 85 } 86 } 87 } 88 } 89 90 private boolean isPreset(ReportFilterSpec filterDefinition) { 91 if (existingParams == null){ 92 return false; 93 } else { 94 return existingParams.containsKey(filterDefinition.getParamNames().get(0)); 95 } 96 } 97 } 98 | Popular Tags |