diff options
Diffstat (limited to 'ri/src/main/java/javax/annotation/Nonnegative.java')
-rw-r--r-- | ri/src/main/java/javax/annotation/Nonnegative.java | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/ri/src/main/java/javax/annotation/Nonnegative.java b/ri/src/main/java/javax/annotation/Nonnegative.java deleted file mode 100644 index 21d1793..0000000 --- a/ri/src/main/java/javax/annotation/Nonnegative.java +++ /dev/null @@ -1,41 +0,0 @@ -package javax.annotation; - -import java.lang.annotation.Documented; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -import javax.annotation.meta.TypeQualifier; -import javax.annotation.meta.TypeQualifierValidator; -import javax.annotation.meta.When; - -/** Used to annotate a value that should only contain nonnegative values */ -@Documented -@TypeQualifier(applicableTo = Number.class) -@Retention(RetentionPolicy.RUNTIME) -public @interface Nonnegative { - When when() default When.ALWAYS; - - class Checker implements TypeQualifierValidator<Nonnegative> { - - public When forConstantValue(Nonnegative annotation, Object v) { - if (!(v instanceof Number)) - return When.NEVER; - boolean isNegative; - Number value = (Number) v; - if (value instanceof Long) - isNegative = value.longValue() < 0; - else if (value instanceof Double) - isNegative = value.doubleValue() < 0; - else if (value instanceof Float) - isNegative = value.floatValue() < 0; - else - isNegative = value.intValue() < 0; - - if (isNegative) - return When.NEVER; - else - return When.ALWAYS; - - } - } -} |