com pftt2: Replace some sources with jsr305-3.0.0.jar: .classpath bin/pftt bin/pftt.cmd lib/jsr305-3.0.0.jar src/javax/annotation/CheckForNull.java src/javax/annotation/CheckForSigned.java src/javax/annotation/CheckReturnValue.java src/javax/annotation/Detainted.java src/javax/annotation/MatchesPattern.java src/javax/annotation/Nonnegative.java src/javax/annotation/Nonnull.java src/javax/annotation/Nullable.java src/javax/annotation/OverridingMet

[email protected] (Christoph Michael Becker)
Newsgroups php.qa
Message-ID <[email protected]>
Commit:    cabf457c094f6764a03e02d0e51ca786ba6cf060
Author:    Christoph M. Becker <[email protected]>         Tue, 1 Oct 2019 16:11:56 +0200
Parents:   d93ae5c801a89c1b286fae3eb85868c98b127ac4
Branches:  master

Link:       http://git.php.net/?p=pftt2.git;a=commitdiff;h=cabf457c094f6764a03e02d0e51ca786ba6cf060

Log:
Replace some sources with jsr305-3.0.0.jar

Changed paths:
  M  .classpath
  M  bin/pftt
  M  bin/pftt.cmd
  A  lib/jsr305-3.0.0.jar
  D  src/javax/annotation/CheckForNull.java
  D  src/javax/annotation/CheckForSigned.java
  D  src/javax/annotation/CheckReturnValue.java
  D  src/javax/annotation/Detainted.java
  D  src/javax/annotation/MatchesPattern.java
  D  src/javax/annotation/Nonnegative.java
  D  src/javax/annotation/Nonnull.java
  D  src/javax/annotation/Nullable.java
  D  src/javax/annotation/OverridingMethodsMustInvokeSuper.java
  D  src/javax/annotation/ParametersAreNonnullByDefault.java
  D  src/javax/annotation/ParametersAreNullableByDefault.java
  D  src/javax/annotation/PropertyKey.java
  D  src/javax/annotation/RegEx.java
  D  src/javax/annotation/Signed.java
  D  src/javax/annotation/Syntax.java
  D  src/javax/annotation/Tainted.java
  D  src/javax/annotation/Untainted.java
  D  src/javax/annotation/WillClose.java
  D  src/javax/annotation/WillCloseWhenClosed.java
  D  src/javax/annotation/WillNotClose.java
  D  src/javax/annotation/concurrent/GuardedBy.java
  D  src/javax/annotation/concurrent/Immutable.java
  D  src/javax/annotation/concurrent/NotThreadSafe.java
  D  src/javax/annotation/concurrent/ThreadSafe.java
  D  src/javax/annotation/meta/Exclusive.java
  D  src/javax/annotation/meta/Exhaustive.java
  D  src/javax/annotation/meta/TypeQualifier.java
  D  src/javax/annotation/meta/TypeQualifierDefault.java
  D  src/javax/annotation/meta/TypeQualifierNickname.java
  D  src/javax/annotation/meta/TypeQualifierValidator.java
  D  src/javax/annotation/meta/When.java
diff_cabf457c094f6764a03e02d0e51ca786ba6cf060.txt (text/plain, 31.3 KB)
diff --git a/.classpath b/.classpath
index b7163907..d368a3e9 100644
--- a/.classpath
+++ b/.classpath
@@ -61,5 +61,6 @@
 	<classpathentry kind="lib" path="lib/windowsazure-websites-0.5.0.jar"/>
 	<classpathentry kind="lib" path="lib/java-diff-1.1.2.jar"/>
 	<classpathentry kind="lib" path="lib/kxml2-2.3.0.jar"/>
+	<classpathentry kind="lib" path="lib/jsr305-3.0.0.jar"/>
 	<classpathentry kind="output" path="build"/>
 </classpath>
diff --git a/bin/pftt b/bin/pftt
index 62f87c61..78b875ef 100644
--- a/bin/pftt
+++ b/bin/pftt
@@ -62,6 +62,7 @@ $PFTT_LIB/sshd-core-1.1.1.jar;\
 $PFTT_LIB/windowsazure-core-0.5.0.jar;\
 $PFTT_LIB/windowsazure-websites-0.5.0.jar;\
 $PFTT_LIB/java-diff-1.1.2.jar;\
-$PFTT_LIB/kxml2-2.3.0.jar
+$PFTT_LIB/kxml2-2.3.0.jar;\
+$PFTT_LIB/jsr305-3.0.0.jar
 
 java -classpath $CLASSPATH com.mostc.pftt.main.PfttMain $*
diff --git a/bin/pftt.cmd b/bin/pftt.cmd
index 10a7fe91..c5e8656e 100644
--- a/bin/pftt.cmd
+++ b/bin/pftt.cmd
@@ -63,7 +63,8 @@ SET CLASSPATH=^
 %PFTT_LIB%\windowsazure-core-0.5.0.jar;^
 %PFTT_LIB%\windowsazure-websites-0.5.0.jar;^
 %PFTT_LIB%\java-diff-1.1.2.jar;^
-%PFTT_LIB%\kxml2-2.3.0.jar
+%PFTT_LIB%\kxml2-2.3.0.jar;^
+%PFTT_LIB%\jsr305-3.0.0.jar
 
 REM this might be also controlled by environment, if needed
 IF EXIST %PFTT_LIB%\pftt2.jar (
diff --git a/lib/jsr305-3.0.0.jar b/lib/jsr305-3.0.0.jar
new file mode 100644
index 00000000..cc39b738
Binary files /dev/null and b/lib/jsr305-3.0.0.jar differ
diff --git a/src/javax/annotation/CheckForNull.java b/src/javax/annotation/CheckForNull.java
deleted file mode 100644
index 6fe52005..00000000
--- a/src/javax/annotation/CheckForNull.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-@Documented
-@TypeQualifierNickname
-@Nonnull(when = When.MAYBE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface CheckForNull {
-
-}
diff --git a/src/javax/annotation/CheckForSigned.java b/src/javax/annotation/CheckForSigned.java
deleted file mode 100644
index f3bc5975..00000000
--- a/src/javax/annotation/CheckForSigned.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-/**
- * Used to annotate a value that may be either negative or nonnegative, and
- * indicates that uses of it should check for
- * negative values before using it in a way that requires the value to be
- * nonnegative, and check for it being nonnegative before using it in a way that
- * requires it to be negative.
- */
-
-@Documented
-@TypeQualifierNickname
-@Nonnegative(when = When.MAYBE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface CheckForSigned {
-
-}
diff --git a/src/javax/annotation/CheckReturnValue.java b/src/javax/annotation/CheckReturnValue.java
deleted file mode 100644
index 370fa381..00000000
--- a/src/javax/annotation/CheckReturnValue.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-import javax.annotation.meta.When;
-
-@Documented
-@Target( { ElementType.METHOD, ElementType.CONSTRUCTOR, ElementType.TYPE,
-        ElementType.PACKAGE })
-@Retention(RetentionPolicy.RUNTIME)
-public @interface CheckReturnValue {
-    When when() default When.ALWAYS;
-}
diff --git a/src/javax/annotation/Detainted.java b/src/javax/annotation/Detainted.java
deleted file mode 100644
index d8620f2f..00000000
--- a/src/javax/annotation/Detainted.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-@Documented
-@TypeQualifierNickname
-@Untainted(when = When.ALWAYS)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Detainted {
-
-}
diff --git a/src/javax/annotation/MatchesPattern.java b/src/javax/annotation/MatchesPattern.java
deleted file mode 100644
index 775d21c3..00000000
--- a/src/javax/annotation/MatchesPattern.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.util.regex.Pattern;
-
-import javax.annotation.meta.TypeQualifier;
-import javax.annotation.meta.TypeQualifierValidator;
-import javax.annotation.meta.When;
-
-@Documented
-@TypeQualifier(applicableTo = String.class)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface MatchesPattern {
-    @RegEx
-    String value();
-
-    int flags() default 0;
-
-    static class Checker implements TypeQualifierValidator<MatchesPattern> {
-        public When forConstantValue(MatchesPattern annotation, Object value) {
-            Pattern p = Pattern.compile(annotation.value(), annotation.flags());
-            if (p.matcher(((String) value)).matches())
-                return When.ALWAYS;
-            return When.NEVER;
-        }
-
-    }
-}
diff --git a/src/javax/annotation/Nonnegative.java b/src/javax/annotation/Nonnegative.java
deleted file mode 100644
index 21d17938..00000000
--- a/src/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;
-
-        }
-    }
-}
diff --git a/src/javax/annotation/Nonnull.java b/src/javax/annotation/Nonnull.java
deleted file mode 100644
index 4b7aad97..00000000
--- a/src/javax/annotation/Nonnull.java
+++ /dev/null
@@ -1,26 +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;
-
-@Documented
-@TypeQualifier
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Nonnull {
-    When when() default When.ALWAYS;
-
-    static class Checker implements TypeQualifierValidator<Nonnull> {
-
-        public When forConstantValue(Nonnull qualifierqualifierArgument,
-                Object value) {
-            if (value == null)
-                return When.NEVER;
-            return When.ALWAYS;
-        }
-    }
-}
diff --git a/src/javax/annotation/Nullable.java b/src/javax/annotation/Nullable.java
deleted file mode 100644
index d31993db..00000000
--- a/src/javax/annotation/Nullable.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-@Documented
-@TypeQualifierNickname
-@Nonnull(when = When.UNKNOWN)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Nullable {
-
-}
diff --git a/src/javax/annotation/OverridingMethodsMustInvokeSuper.java b/src/javax/annotation/OverridingMethodsMustInvokeSuper.java
deleted file mode 100644
index 4e3344e8..00000000
--- a/src/javax/annotation/OverridingMethodsMustInvokeSuper.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * When this annotation is applied to a method, it indicates that if this method
- * is overridden in a subclass, the overriding method should invoke this method
- * (through method invocation on super).
- * 
- */
-@Documented
-@Target( { ElementType.METHOD })
-@Retention(RetentionPolicy.RUNTIME)
-public @interface OverridingMethodsMustInvokeSuper {
-
-}
diff --git a/src/javax/annotation/ParametersAreNonnullByDefault.java b/src/javax/annotation/ParametersAreNonnullByDefault.java
deleted file mode 100644
index 6424b873..00000000
--- a/src/javax/annotation/ParametersAreNonnullByDefault.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierDefault;
-
-/**
- * This annotation can be applied to a package, class or method to indicate that
- * the method parameters in that element are nonnull by default unless there is:
- * <ul>
- * <li>An explicit nullness annotation
- * <li>The method overrides a method in a superclass (in which case the
- * annotation of the corresponding parameter in the superclass applies)
- * <li> there is a default parameter annotation applied to a more tightly nested
- * element.
- * </ul>
- * 
- */
-@Documented
-@Nonnull
-@TypeQualifierDefault(ElementType.PARAMETER)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ParametersAreNonnullByDefault {
-}
diff --git a/src/javax/annotation/ParametersAreNullableByDefault.java b/src/javax/annotation/ParametersAreNullableByDefault.java
deleted file mode 100644
index 01d4d806..00000000
--- a/src/javax/annotation/ParametersAreNullableByDefault.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierDefault;
-
-/**
- * This annotation can be applied to a package, class or method to indicate that
- * the method parameters in that element are nullable by default unless there is:
- * <ul>
- * <li>An explicit nullness annotation
- * <li>The method overrides a method in a superclass (in which case the
- * annotation of the corresponding parameter in the superclass applies)
- * <li> there is a default parameter annotation applied to a more tightly nested
- * element.
- * </ul>
- * <p>This annotation implies the same "nullness" as no annotation. However, it is different
- * than having no annotation, as it is inherited and it can override a ParametersAreNonnullByDefault
- * annotation at an outer scope.
- * 
- */
-@Documented
-@Nullable
-@TypeQualifierDefault(ElementType.PARAMETER)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ParametersAreNullableByDefault {
-}
diff --git a/src/javax/annotation/PropertyKey.java b/src/javax/annotation/PropertyKey.java
deleted file mode 100644
index 780782d9..00000000
--- a/src/javax/annotation/PropertyKey.java
+++ /dev/null
@@ -1,15 +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.When;
-
-@Documented
-@TypeQualifier
-@Retention(RetentionPolicy.RUNTIME)
-public @interface PropertyKey {
-    When when() default When.ALWAYS;
-}
diff --git a/src/javax/annotation/RegEx.java b/src/javax/annotation/RegEx.java
deleted file mode 100644
index 21697a76..00000000
--- a/src/javax/annotation/RegEx.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.util.regex.Pattern;
-import java.util.regex.PatternSyntaxException;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.TypeQualifierValidator;
-import javax.annotation.meta.When;
-
-/**
- * This qualifier is used to denote String values that should be a Regular
- * expression.
- * 
- */
-@Documented
-@Syntax("RegEx")
-@TypeQualifierNickname
-@Retention(RetentionPolicy.RUNTIME)
-public @interface RegEx {
-    When when() default When.ALWAYS;
-
-    static class Checker implements TypeQualifierValidator<RegEx> {
-
-        public When forConstantValue(RegEx annotation, Object value) {
-            if (!(value instanceof String))
-                return When.NEVER;
-
-            try {
-                Pattern.compile((String) value);
-            } catch (PatternSyntaxException e) {
-                return When.NEVER;
-            }
-            return When.ALWAYS;
-
-        }
-
-    }
-
-}
diff --git a/src/javax/annotation/Signed.java b/src/javax/annotation/Signed.java
deleted file mode 100644
index 2c2fa062..00000000
--- a/src/javax/annotation/Signed.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-/** Used to annotate a value of unknown sign */
-
-@Documented
-@TypeQualifierNickname
-@Nonnegative(when = When.UNKNOWN)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Signed {
-
-}
diff --git a/src/javax/annotation/Syntax.java b/src/javax/annotation/Syntax.java
deleted file mode 100644
index fa0586d0..00000000
--- a/src/javax/annotation/Syntax.java
+++ /dev/null
@@ -1,44 +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.When;
-
-/**
- * This annotation a value that is of a particular syntax, such as Java syntax
- * or regular expression syntax. This can be used to provide syntax checking of
- * constant values at compile time, run time checking at runtime, and can assist
- * IDEs in deciding how to interpret String constants (e.g., should a
- * refactoring that renames method x() to y() update the String constant "x()").
- * 
- * 
- */
-@Documented
-@TypeQualifier(applicableTo = CharSequence.class)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Syntax {
-    /**
-     * Value indicating the particular syntax denoted by this annotation.
-     * Different tools will recognize different syntaxes, but some proposed
-     * canonical values are:
-     * <ul>
-     * <li> "Java"
-     * <li> "RegEx"
-     * <li> "JavaScript"
-     * <li> "Ruby"
-     * <li> "Groovy"
-     * <li> "SQL"
-     * <li> "FormatString"
-     * </ul>
-     * 
-     * Syntax names can be followed by a colon and a list of key value pairs,
-     * separated by commas. For example, "SQL:dialect=Oracle,version=2.3". Tools
-     * should ignore any keys they don't recognize.
-     */
-    String value();
-
-    When when() default When.ALWAYS;
-}
diff --git a/src/javax/annotation/Tainted.java b/src/javax/annotation/Tainted.java
deleted file mode 100644
index 6715d700..00000000
--- a/src/javax/annotation/Tainted.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifierNickname;
-import javax.annotation.meta.When;
-
-@Documented
-@TypeQualifierNickname
-@Untainted(when = When.MAYBE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Tainted {
-
-}
diff --git a/src/javax/annotation/Untainted.java b/src/javax/annotation/Untainted.java
deleted file mode 100644
index 4a26a492..00000000
--- a/src/javax/annotation/Untainted.java
+++ /dev/null
@@ -1,15 +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.When;
-
-@Documented
-@TypeQualifier
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Untainted {
-    When when() default When.ALWAYS;
-}
diff --git a/src/javax/annotation/WillClose.java b/src/javax/annotation/WillClose.java
deleted file mode 100644
index 9ea70cfb..00000000
--- a/src/javax/annotation/WillClose.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-/**
- * Used to annotate a method parameter to indicate that this method will close
- * the resource.
- */
-public @interface WillClose {
-
-}
diff --git a/src/javax/annotation/WillCloseWhenClosed.java b/src/javax/annotation/WillCloseWhenClosed.java
deleted file mode 100644
index 13c927d6..00000000
--- a/src/javax/annotation/WillCloseWhenClosed.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-/**
- * Used to annotate a constructor/factory parameter to indicate that returned
- * object (X) will close the resource when X is closed.
- */
-public @interface WillCloseWhenClosed {
-
-}
diff --git a/src/javax/annotation/WillNotClose.java b/src/javax/annotation/WillNotClose.java
deleted file mode 100644
index d698b7c2..00000000
--- a/src/javax/annotation/WillNotClose.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-/**
- * Used to annotate a method parameter to indicate that this method will not
- * close the resource.
- */
-public @interface WillNotClose {
-
-}
diff --git a/src/javax/annotation/concurrent/GuardedBy.java b/src/javax/annotation/concurrent/GuardedBy.java
deleted file mode 100644
index 9d6641da..00000000
--- a/src/javax/annotation/concurrent/GuardedBy.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package javax.annotation.concurrent;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/*
- * Copyright (c) 2005 Brian Goetz
- * Released under the Creative Commons Attribution License
- *   (http://creativecommons.org/licenses/by/2.5)
- * Official home: http://www.jcip.net
- */
-
-/**
- * GuardedBy
- * 
- * The field or method to which this annotation is applied can only be accessed
- * when holding a particular lock, which may be a built-in (synchronization)
- * lock, or may be an explicit java.util.concurrent.Lock.
- * 
- * The argument determines which lock guards the annotated field or method: this :
- * The string literal "this" means that this field is guarded by the class in
- * which it is defined. class-name.this : For inner classes, it may be necessary
- * to disambiguate 'this'; the class-name.this designation allows you to specify
- * which 'this' reference is intended itself : For reference fields only; the
- * object to which the field refers. field-name : The lock object is referenced
- * by the (instance or static) field specified by field-name.
- * class-name.field-name : The lock object is reference by the static field
- * specified by class-name.field-name. method-name() : The lock object is
- * returned by calling the named nil-ary method. class-name.class : The Class
- * object for the specified class should be used as the lock object.
- */
-@Target( { ElementType.FIELD, ElementType.METHOD })
-@Retention(RetentionPolicy.CLASS)
-public @interface GuardedBy {
-    String value();
-}
diff --git a/src/javax/annotation/concurrent/Immutable.java b/src/javax/annotation/concurrent/Immutable.java
deleted file mode 100644
index 03f1cb58..00000000
--- a/src/javax/annotation/concurrent/Immutable.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package javax.annotation.concurrent;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/*
- * Copyright (c) 2005 Brian Goetz
- * Released under the Creative Commons Attribution License
- *   (http://creativecommons.org/licenses/by/2.5)
- * Official home: http://www.jcip.net
- */
-
-/**
- * Immutable
- * 
- * The class to which this annotation is applied is immutable. This means that
- * its state cannot be seen to change by callers. Of necessity this means that
- * all public fields are final, and that all public final reference fields refer
- * to other immutable objects, and that methods do not publish references to any
- * internal state which is mutable by implementation even if not by design.
- * Immutable objects may still have internal mutable state for purposes of
- * performance optimization; some state variables may be lazily computed, so
- * long as they are computed from immutable state and that callers cannot tell
- * the difference.
- * 
- * Immutable objects are inherently thread-safe; they may be passed between
- * threads or published without synchronization.
- */
-@Documented
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.CLASS)
-public @interface Immutable {
-}
diff --git a/src/javax/annotation/concurrent/NotThreadSafe.java b/src/javax/annotation/concurrent/NotThreadSafe.java
deleted file mode 100644
index d9481426..00000000
--- a/src/javax/annotation/concurrent/NotThreadSafe.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package javax.annotation.concurrent;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/*
- * Copyright (c) 2005 Brian Goetz
- * Released under the Creative Commons Attribution License
- *   (http://creativecommons.org/licenses/by/2.5)
- * Official home: http://www.jcip.net
- */
-
-/**
- * NotThreadSafe
- * 
- * The class to which this annotation is applied is not thread-safe. This
- * annotation primarily exists for clarifying the non-thread-safety of a class
- * that might otherwise be assumed to be thread-safe, despite the fact that it
- * is a bad idea to assume a class is thread-safe without good reason.
- * 
- * @see ThreadSafe
- */
-@Documented
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.CLASS)
-public @interface NotThreadSafe {
-}
diff --git a/src/javax/annotation/concurrent/ThreadSafe.java b/src/javax/annotation/concurrent/ThreadSafe.java
deleted file mode 100644
index 3c861289..00000000
--- a/src/javax/annotation/concurrent/ThreadSafe.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package javax.annotation.concurrent;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * ThreadSafe
- * 
- * The class to which this annotation is applied is thread-safe. This means that
- * no sequences of accesses (reads and writes to public fields, calls to public
- * methods) may put the object into an invalid state, regardless of the
- * interleaving of those actions by the runtime, and without requiring any
- * additional synchronization or coordination on the part of the caller.
- */
-@Documented
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.CLASS)
-public @interface ThreadSafe {
-}
diff --git a/src/javax/annotation/meta/Exclusive.java b/src/javax/annotation/meta/Exclusive.java
deleted file mode 100644
index d018c33b..00000000
--- a/src/javax/annotation/meta/Exclusive.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * This annotation can be applied to the value() element of an annotation that
- * is annotated as a TypeQualifier.
- * 
- * For example, the following defines a type qualifier such that if you know a
- * value is {@literal @Foo(1)}, then the value cannot be {@literal @Foo(2)} or {{@literal @Foo(3)}.
- * 
- * <code>
- * @TypeQualifier @interface Foo {
- *     @Exclusive int value();
- *     }
- *  </code>
- * 
- */
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Exclusive {
-
-}
diff --git a/src/javax/annotation/meta/Exhaustive.java b/src/javax/annotation/meta/Exhaustive.java
deleted file mode 100644
index dc75f06b..00000000
--- a/src/javax/annotation/meta/Exhaustive.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * This annotation can be applied to the value() element of an annotation that
- * is annotated as a TypeQualifier. This is only appropriate if the value field
- * returns a value that is an Enumeration.
- * 
- * Applications of the type qualifier with different values are exclusive, and
- * the enumeration is an exhaustive list of the possible values.
- * 
- * For example, the following defines a type qualifier such that if you know a
- * value is neither {@literal @Foo(Color.Red)} or {@literal @Foo(Color.Blue)},
- * then the value must be {@literal @Foo(Color.Green)}. And if you know it is
- * {@literal @Foo(Color.Green)}, you know it cannot be
- * {@literal @Foo(Color.Red)} or {@literal @Foo(Color.Blue)}
- * 
- * <code>
- * @TypeQualifier  @interface Foo {
- *     enum Color {RED, BLUE, GREEN};
- *     @Exhaustive Color value();
- *     }
- *  </code>
- */
-
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Exhaustive {
-
-}
diff --git a/src/javax/annotation/meta/TypeQualifier.java b/src/javax/annotation/meta/TypeQualifier.java
deleted file mode 100644
index 99f63127..00000000
--- a/src/javax/annotation/meta/TypeQualifier.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * This qualifier is applied to an annotation to denote that the annotation
- * should be treated as a type qualifier.
- */
-
-@Documented
-@Target(ElementType.ANNOTATION_TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface TypeQualifier {
-
-    /**
-     * Describes the kinds of values the qualifier can be applied to. If a
-     * numeric class is provided (e.g., Number.class or Integer.class) then the
-     * annotation can also be applied to the corresponding primitive numeric
-     * types.
-     */
-    Class<?> applicableTo() default Object.class;
-
-}
diff --git a/src/javax/annotation/meta/TypeQualifierDefault.java b/src/javax/annotation/meta/TypeQualifierDefault.java
deleted file mode 100644
index 0c8bd528..00000000
--- a/src/javax/annotation/meta/TypeQualifierDefault.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * This qualifier is applied to an annotation to denote that the annotation
- * defines a default type qualifier that is visible within the scope of the
- * element it is applied to.
- */
-
-@Documented
-@Target(ElementType.ANNOTATION_TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface TypeQualifierDefault {
-    ElementType[] value() default {};
-}
diff --git a/src/javax/annotation/meta/TypeQualifierNickname.java b/src/javax/annotation/meta/TypeQualifierNickname.java
deleted file mode 100644
index 40c99838..00000000
--- a/src/javax/annotation/meta/TypeQualifierNickname.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Target;
-
-/**
- * 
- * This annotation is applied to a annotation, and marks the annotation as being
- * a qualifier nickname. Applying a nickname annotation X to a element Y should
- * be interpreted as having the same meaning as applying all of annotations of X
- * (other than QualifierNickname) to Y.
- * 
- * <p>
- * Thus, you might define a qualifier SocialSecurityNumber as follows:
- * </p>
- * 
- * 
- * <code>
- @Documented
- @TypeQualifierNickname @Pattern("[0-9]{3}-[0-9]{2}-[0-9]{4}") 
- @Retention(RetentionPolicy.RUNTIME)
- public @interface SocialSecurityNumber {
- }
- </code>
- * 
- * 
- */
-@Documented
-@Target(ElementType.ANNOTATION_TYPE)
-public @interface TypeQualifierNickname {
-
-}
diff --git a/src/javax/annotation/meta/TypeQualifierValidator.java b/src/javax/annotation/meta/TypeQualifierValidator.java
deleted file mode 100644
index 80530112..00000000
--- a/src/javax/annotation/meta/TypeQualifierValidator.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package javax.annotation.meta;
-
-import java.lang.annotation.Annotation;
-
-import javax.annotation.Nonnull;
-
-public interface TypeQualifierValidator<A extends Annotation> {
-    /**
-     * Given a type qualifier, check to see if a known specific constant value
-     * is an instance of the set of values denoted by the qualifier.
-     * 
-     * @param annotation
-     *                the type qualifier
-     * @param value
-     *                the value to check
-     * @return a value indicating whether or not the value is an member of the
-     *         values denoted by the type qualifier
-     */
-    public @Nonnull
-    When forConstantValue(@Nonnull A annotation, Object value);
-}
diff --git a/src/javax/annotation/meta/When.java b/src/javax/annotation/meta/When.java
deleted file mode 100644
index ec8a1bc7..00000000
--- a/src/javax/annotation/meta/When.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package javax.annotation.meta;
-
-/**
- * Used to describe the relationship between a qualifier T and the set of values
- * S possible on an annotated element.
- * 
- * In particular, an issues should be reported if an ALWAYS or MAYBE value is
- * used where a NEVER value is required, or if a NEVER or MAYBE value is used
- * where an ALWAYS value is required.
- * 
- * 
- */
-public enum When {
-    /** S is a subset of T */
-    ALWAYS,
-    /** nothing definitive is known about the relation between S and T */
-    UNKNOWN,
-    /** S intersection T is non empty and S - T is nonempty */
-    MAYBE,
-    /** S intersection T is empty */
-    NEVER;
-
-}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.