KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > war > validation > ListOfValuesValidator


1 /*
2  * Copyright (C) 2006 JasperSoft http://www.jaspersoft.com
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed WITHOUT ANY WARRANTY; and without the
10  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
15  * or write to:
16  *
17  * Free Software Foundation, Inc.,
18  * 59 Temple Place - Suite 330,
19  * Boston, MA USA 02111-1307
20  */

21 package com.jaspersoft.jasperserver.war.validation;
22
23 import java.util.List JavaDoc;
24
25 import com.jaspersoft.jasperserver.api.metadata.common.domain.ListOfValues;
26 import com.jaspersoft.jasperserver.api.metadata.common.domain.Resource;
27 import com.jaspersoft.jasperserver.war.common.JasperServerConst;
28 import com.jaspersoft.jasperserver.war.common.JasperServerUtil;
29 import com.jaspersoft.jasperserver.war.dto.ListOfValuesDTO;
30 import org.springframework.validation.Errors;
31 import org.springframework.validation.Validator;
32
33 /**
34  * @author Ionut Nedelcu (ionutned@users.sourceforge.net)
35  * @version $Id: ListOfValuesValidator.java 4143 2006-08-08 08:06:34Z saiyedm $
36  */

37 public class ListOfValuesValidator implements Validator
38 {
39     public boolean supports(Class JavaDoc klass)
40     {
41         return ListOfValuesDTO.class.isAssignableFrom(klass);
42     }
43
44     public void validate(Object JavaDoc object, Errors errors)
45     {
46     }
47
48     public void validateResourceData(ListOfValuesDTO listOfValuesDTO, Errors errors)
49     {
50         ListOfValues listOfValues = listOfValuesDTO.getListOfValues();
51         if (listOfValues.getName() == null || size(listOfValues.getName()) == 0) {
52             errors.rejectValue("listOfValues.name", "error.not.empty");
53             } else {
54                 if(listOfValues.getName().length()> JasperServerConst.MAX_LENGTH_NAME){
55                     errors.rejectValue("listOfValues.name", null, "Max length is "+JasperServerConst.MAX_LENGTH_NAME);
56                 }else{
57                     if(!JasperServerUtil.regExValidateName(listOfValues.getName())) {
58                         errors.rejectValue("listOfValues.name", null, "Name contains invalid characters");
59                         }/*else{
60                             // When in stand alone new mode check name uniquenesss in folder
61                             List allResources=listOfValuesDTO.getAllResources();
62                             if(listOfValuesDTO.isAloneNewMode() && allResources!=null){
63                                 for(int i=0;i<allResources.size();i++){
64                                     Resource res=(Resource)allResources.get(i);
65                                     if(res.getName().equals(listOfValues.getName().trim())){
66                                         errors.rejectValue("listOfValues.name",
67                                                 null, "A Resource with this name already exists");
68                                         break;
69                                     }
70                                 }
71                             }
72                         }*/

73                 }
74             }
75
76         if (listOfValues.getLabel() == null || size(listOfValues.getLabel()) == 0) {
77             errors.rejectValue("listOfValues.label", "error.not.empty");
78         } else {
79             if(listOfValues.getLabel().length()> JasperServerConst.MAX_LENGTH_LABEL){
80                 errors.rejectValue("listOfValues.label", null, "Max length is "+JasperServerConst.MAX_LENGTH_LABEL);
81             }else{
82                 if(!JasperServerUtil.regExValidateLabel(listOfValues.getLabel())) {
83                     errors.rejectValue("listOfValues.label", null, "Label contains invalid characters");
84                 }
85             }
86         }
87
88         if (listOfValues.getDescription() != null &&
89                 size(listOfValues.getDescription()) >JasperServerConst.MAX_LENGTH_DESC) {
90                 errors.rejectValue("listOfValues.description", null, "Description should not be longer than "
91                         +JasperServerConst.MAX_LENGTH_DESC+" characters");
92         }
93     }
94
95     public void validateAddValue(ListOfValuesDTO listOfValuesDTO, Errors errors){
96         String JavaDoc newLabel=listOfValuesDTO.getNewLabel();
97         if( newLabel == null || size(newLabel) == 0){
98             errors.rejectValue("newLabel",null,"Please enter Item label");
99         }else{
100             if(newLabel.length()>JasperServerConst.MAX_LENGTH_LABEL){
101                 errors.rejectValue("newLabel",null,"Label Max length is "+JasperServerConst.MAX_LENGTH_LABEL);
102             }else{
103                 if(!JasperServerUtil.regExValidateLabel(newLabel)) {
104                     errors.rejectValue("newLabel",null,"Label contains invalid characters");
105                 }
106             }
107         }
108             
109         if(listOfValuesDTO.getNewValue() == null || size(listOfValuesDTO.getNewValue()) == 0){
110             errors.rejectValue("newValue",null,"Please enter Item value");
111         }else{
112             if(listOfValuesDTO.getNewValue().length()>JasperServerConst.MAX_LENGTH_LABEL){
113                 errors.rejectValue("newValue",null,"Value Max length is "+JasperServerConst.MAX_LENGTH_LABEL);
114             }
115         }
116             
117     }
118     
119     public void validateLovSave(ListOfValuesDTO listOfValuesDTO, Errors errors){
120         Object JavaDoc []values=listOfValuesDTO.getListOfValues().getValues();
121         if(values==null || values.length==0){
122             // Let the no values error show up at the label error field
123
errors.rejectValue("newLabel",null,"Please enter a Label and Value");
124         }
125     }
126
127     private int size(String JavaDoc text){
128         return text.trim().length();
129     }
130
131 }
132
133
Popular Tags