WW-3952 Introduces annotation
Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/743d27f8 Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/743d27f8 Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/743d27f8 Branch: refs/heads/master Commit: 743d27f841ce990ed3153f569f890179bdbb6a37 Parents: fc49736 Author: Lukasz Lenart <lukaszlen...@apache.org> Authored: Wed Apr 19 18:06:31 2017 +0200 Committer: Lukasz Lenart <lukaszlen...@apache.org> Committed: Wed Apr 19 18:06:31 2017 +0200 ---------------------------------------------------------------------- .../annotations/CreditCardValidator.java | 66 ++++++++++++++++++++ 1 file changed, 66 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/struts/blob/743d27f8/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java new file mode 100644 index 0000000..f007ab7 --- /dev/null +++ b/core/src/main/java/com/opensymphony/xwork2/validator/annotations/CreditCardValidator.java @@ -0,0 +1,66 @@ +/* + * Copyright 2002-2006,2009 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.opensymphony.xwork2.validator.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * This validator checks that a field is a valid credit card. + */ +@Target({ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +public @interface CreditCardValidator { + + /** + * @return The default error message for this validator. + * NOTE: It is required to set a message, if you are not using the message key for 18n lookup! + */ + String message() default ""; + + /** + * @return The message key to lookup for i18n. + */ + String key() default ""; + + /** + * @return Additional params to be used to customize message - will be evaluated against the Value Stack + */ + String[] messageParams() default {}; + + /** + * @return The optional fieldName for SIMPLE validator types. + */ + String fieldName() default ""; + + /** + * If this is activated, the validator will be used as short-circuit. + * + * Adds the short-circuit='true' attribute value if <tt>true</tt>. + * + * @return true if validator will be used as short-circuit. Default is false. + */ + boolean shortCircuit() default false; + + /** + * @return The validation type for this field/method. + */ + ValidatorType type() default ValidatorType.FIELD; + +}