Fix security risk 'Improper Input Validation'
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / common / util / NoHtml.java
1 /*
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2022 Nordix Foundation. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.common.util;
22
23 import static java.lang.annotation.ElementType.FIELD;
24 import static java.lang.annotation.ElementType.METHOD;
25 import static java.lang.annotation.RetentionPolicy.RUNTIME;
26
27 import java.lang.annotation.Documented;
28 import java.lang.annotation.Retention;
29 import java.lang.annotation.Target;
30 import javax.validation.Constraint;
31 import javax.validation.Payload;
32
33 /**
34  * Provides mechanism to annotate METHOD and/or FIELD to be validated by {@link NoHtmlValidator}.
35  */
36 @Documented
37 @Constraint(validatedBy = NoHtmlValidator.class)
38 @Target({METHOD, FIELD})
39 @Retention(RUNTIME)
40 public @interface NoHtml {
41
42     String message() default "Unsafe html content";
43
44     Class<?>[] groups() default {};
45
46     Class<? extends Payload>[] payload() default {};
47 }