Revize 8490c92c
Přidáno uživatelem Vojtěch Danišík před téměř 5 roky(ů)
src/main/java/vldc/aswi/domain/Configuration.java | ||
---|---|---|
4 | 4 |
import lombok.EqualsAndHashCode; |
5 | 5 |
import lombok.NoArgsConstructor; |
6 | 6 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
7 |
import vldc.aswi.utils.validator.OperatorValueConstraint; |
|
8 | 7 |
|
9 | 8 |
import javax.persistence.*; |
10 |
import javax.validation.Valid; |
|
11 |
import javax.validation.constraints.NotNull; |
|
12 | 9 |
import java.util.List; |
13 | 10 |
|
14 | 11 |
/** |
src/main/java/vldc/aswi/domain/parameter/Parameter.java | ||
---|---|---|
38 | 38 |
@Column(name = "default_hodnota") |
39 | 39 |
private String defaultValue; |
40 | 40 |
|
41 |
/** Specific type of parameter, which represents type of entry. */ |
|
42 |
@ManyToOne(fetch=FetchType.LAZY) |
|
43 |
@JoinColumn(name = "parametr_typ_id") |
|
44 |
private ParameterType parameterType; |
|
45 |
|
|
46 | 41 |
/** List of parametersInConfiguration, which using this parameter. */ |
47 | 42 |
@OneToMany(mappedBy = "parameter", cascade = {CascadeType.ALL}) |
48 | 43 |
private List<ParameterInConfiguration> parametersInConfiguration; |
src/main/java/vldc/aswi/domain/parameter/ParameterInConfiguration.java | ||
---|---|---|
4 | 4 |
import lombok.EqualsAndHashCode; |
5 | 5 |
import lombok.NoArgsConstructor; |
6 | 6 |
import vldc.aswi.domain.*; |
7 |
import vldc.aswi.utils.validator.OperatorValueConstraint;
|
|
7 |
import vldc.aswi.validators.operator.value.OperatorValueConstraint;
|
|
8 | 8 |
|
9 | 9 |
import javax.persistence.*; |
10 | 10 |
import java.util.List; |
src/main/java/vldc/aswi/utils/validator/OperatorValueConstraint.java | ||
---|---|---|
1 |
package vldc.aswi.utils.validator; |
|
2 |
|
|
3 |
import javax.validation.Constraint; |
|
4 |
import javax.validation.Payload; |
|
5 |
import java.lang.annotation.*; |
|
6 |
|
|
7 |
/** |
|
8 |
* Annotation used for validation of operator value |
|
9 |
*/ |
|
10 |
@Documented |
|
11 |
@Constraint(validatedBy = OperatorValueValidator.class) |
|
12 |
@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE}) |
|
13 |
@Retention(RetentionPolicy.RUNTIME) |
|
14 |
public @interface OperatorValueConstraint { |
|
15 |
|
|
16 |
/** |
|
17 |
* Message of operator value is invalid |
|
18 |
* @return error message |
|
19 |
*/ |
|
20 |
String message() default "Neplatná hodnota filtru!"; |
|
21 |
|
|
22 |
/** |
|
23 |
* Array of classes |
|
24 |
* @return array of classes |
|
25 |
*/ |
|
26 |
Class<?>[] groups() default {}; |
|
27 |
|
|
28 |
/** |
|
29 |
* Class payload |
|
30 |
* @return class payload |
|
31 |
*/ |
|
32 |
Class<? extends Payload>[] payload() default {}; |
|
33 |
} |
src/main/java/vldc/aswi/utils/validator/OperatorValueValidator.java | ||
---|---|---|
1 |
package vldc.aswi.utils.validator; |
|
2 |
|
|
3 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
|
4 |
|
|
5 |
import javax.validation.ConstraintValidator; |
|
6 |
import javax.validation.ConstraintValidatorContext; |
|
7 |
|
|
8 |
/** |
|
9 |
* Validator class for validation operator value according to used operator |
|
10 |
*/ |
|
11 |
public class OperatorValueValidator implements |
|
12 |
ConstraintValidator<OperatorValueConstraint, Object> { |
|
13 |
|
|
14 |
/** |
|
15 |
* Initialize validator |
|
16 |
* @param operatorValue operator value |
|
17 |
*/ |
|
18 |
@Override |
|
19 |
public void initialize(OperatorValueConstraint operatorValue) { |
|
20 |
} |
|
21 |
|
|
22 |
/** |
|
23 |
* Validation process of operator value |
|
24 |
* @param o object to be validated |
|
25 |
* @param constraintValidatorContext context |
|
26 |
* @return true if operator value is valid |
|
27 |
*/ |
|
28 |
@Override |
|
29 |
public boolean isValid(Object o, ConstraintValidatorContext constraintValidatorContext) { |
|
30 |
ParameterInConfiguration parameterInConfiguration = (ParameterInConfiguration) o; |
|
31 |
if (parameterInConfiguration.getOperator() != null && parameterInConfiguration.getOperator().getName().equals("BETWEEN")) { |
|
32 |
return parameterInConfiguration.getOperatorValue().matches(".;."); |
|
33 |
} |
|
34 |
|
|
35 |
return true; |
|
36 |
} |
|
37 |
} |
src/main/java/vldc/aswi/validators/operator/value/OperatorValueConstraint.java | ||
---|---|---|
1 |
package vldc.aswi.validators.operator.value; |
|
2 |
|
|
3 |
import javax.validation.Constraint; |
|
4 |
import javax.validation.Payload; |
|
5 |
import java.lang.annotation.*; |
|
6 |
|
|
7 |
/** |
|
8 |
* Annotation used for validation of operator value |
|
9 |
*/ |
|
10 |
@Documented |
|
11 |
@Constraint(validatedBy = OperatorValueValidator.class) |
|
12 |
@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE}) |
|
13 |
@Retention(RetentionPolicy.RUNTIME) |
|
14 |
public @interface OperatorValueConstraint { |
|
15 |
|
|
16 |
/** |
|
17 |
* Message of operator value is invalid |
|
18 |
* @return error message |
|
19 |
*/ |
|
20 |
String message() default "Neplatná hodnota filtru!"; |
|
21 |
|
|
22 |
/** |
|
23 |
* Array of classes |
|
24 |
* @return array of classes |
|
25 |
*/ |
|
26 |
Class<?>[] groups() default {}; |
|
27 |
|
|
28 |
/** |
|
29 |
* Class payload |
|
30 |
* @return class payload |
|
31 |
*/ |
|
32 |
Class<? extends Payload>[] payload() default {}; |
|
33 |
} |
src/main/java/vldc/aswi/validators/operator/value/OperatorValueValidator.java | ||
---|---|---|
1 |
package vldc.aswi.validators.operator.value; |
|
2 |
|
|
3 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
|
4 |
|
|
5 |
import javax.validation.ConstraintValidator; |
|
6 |
import javax.validation.ConstraintValidatorContext; |
|
7 |
|
|
8 |
/** |
|
9 |
* Validator class for validation operator value according to used operator |
|
10 |
*/ |
|
11 |
public class OperatorValueValidator implements |
|
12 |
ConstraintValidator<OperatorValueConstraint, Object> { |
|
13 |
|
|
14 |
/** |
|
15 |
* Initialize validator |
|
16 |
* @param operatorValue operator value |
|
17 |
*/ |
|
18 |
@Override |
|
19 |
public void initialize(OperatorValueConstraint operatorValue) { |
|
20 |
} |
|
21 |
|
|
22 |
/** |
|
23 |
* Validation process of operator value |
|
24 |
* @param o object to be validated |
|
25 |
* @param constraintValidatorContext context |
|
26 |
* @return true if operator value is valid |
|
27 |
*/ |
|
28 |
@Override |
|
29 |
public boolean isValid(Object o, ConstraintValidatorContext constraintValidatorContext) { |
|
30 |
ParameterInConfiguration parameterInConfiguration = (ParameterInConfiguration) o; |
|
31 |
if (parameterInConfiguration.getOperator() != null && parameterInConfiguration.getOperator().getName().equals("BETWEEN")) { |
|
32 |
return parameterInConfiguration.getOperatorValue().matches(".;."); |
|
33 |
} |
|
34 |
|
|
35 |
return true; |
|
36 |
} |
|
37 |
} |
src/main/java/vldc/aswi/web/controller/AssemblyController.java | ||
---|---|---|
13 | 13 |
import org.springframework.web.servlet.ModelAndView; |
14 | 14 |
import org.springframework.web.servlet.mvc.support.RedirectAttributes; |
15 | 15 |
import vldc.aswi.domain.Assembly; |
16 |
import vldc.aswi.domain.Configuration; |
|
17 |
import vldc.aswi.domain.Location; |
|
18 |
import vldc.aswi.domain.Operator; |
|
19 |
import vldc.aswi.domain.parameter.Parameter; |
|
20 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
|
16 | 21 |
import vldc.aswi.service.*; |
17 | 22 |
import vldc.aswi.service.parameter.ParameterManager; |
18 | 23 |
import vldc.aswi.service.parameter.ParameterTypeManager; |
... | ... | |
63 | 68 |
@Autowired |
64 | 69 |
private AssemblyValidator assemblyValidator; |
65 | 70 |
|
71 |
@Autowired |
|
72 |
private ConfigurationManager configurationManager; |
|
73 |
|
|
66 | 74 |
/** Name of thymeleaf parameter, which will contain text in assembly form. */ |
67 | 75 |
private String assemblyTitleName = "title"; |
68 | 76 |
|
... | ... | |
167 | 175 |
|
168 | 176 |
long assemblyID = assembly.getId(); |
169 | 177 |
System.out.println(assemblyID); |
170 |
Assembly assembly2 = assemblyManager.getAssemblyById(assemblyID); |
|
171 | 178 |
|
172 | 179 |
Assembly assembly2 = this.assemblyManager.getAssemblyById(assemblyID); |
173 | 180 |
|
Také k dispozici: Unified diff
Updating last merge.