diff options
Diffstat (limited to 'sampleUses/src/main/java/CreditCardNumber.java')
-rw-r--r-- | sampleUses/src/main/java/CreditCardNumber.java | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/sampleUses/src/main/java/CreditCardNumber.java b/sampleUses/src/main/java/CreditCardNumber.java deleted file mode 100644 index ef5f711..0000000 --- a/sampleUses/src/main/java/CreditCardNumber.java +++ /dev/null @@ -1,27 +0,0 @@ -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -import javax.annotation.MatchesPattern; -import javax.annotation.meta.TypeQualifier; -import javax.annotation.meta.TypeQualifierValidator; -import javax.annotation.meta.When; - -@Documented -@TypeQualifier -@MatchesPattern("[0-9]{16}") -@Retention(RetentionPolicy.RUNTIME) -public @interface CreditCardNumber { - class Checker implements TypeQualifierValidator<CreditCardNumber> { - - public When forConstantValue(CreditCardNumber annotation, Object v) { - if (!(v instanceof String)) - return When.NEVER; - String s = (String) v; - if (LuhnVerification.checkNumber(s)) - return When.ALWAYS; - return When.NEVER; - } - } -} |