diff --git a/third-party/java8-annotations/javax/annotation/CheckForNull.java b/third-party/java8-annotations/javax/annotation/CheckForNull.java deleted file mode 100644 index 6fe52005c26..00000000000 --- a/third-party/java8-annotations/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/third-party/java8-annotations/javax/annotation/Nonnull.java b/third-party/java8-annotations/javax/annotation/Nonnull.java deleted file mode 100644 index 4b7aad97c70..00000000000 --- a/third-party/java8-annotations/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 { - - public When forConstantValue(Nonnull qualifierqualifierArgument, - Object value) { - if (value == null) - return When.NEVER; - return When.ALWAYS; - } - } -} diff --git a/third-party/java8-annotations/javax/annotation/Nullable.java b/third-party/java8-annotations/javax/annotation/Nullable.java deleted file mode 100644 index d31993dbd77..00000000000 --- a/third-party/java8-annotations/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/third-party/java8-annotations/javax/annotation/ParametersAreNonnullByDefault.java b/third-party/java8-annotations/javax/annotation/ParametersAreNonnullByDefault.java deleted file mode 100644 index a2402b5d98f..00000000000 --- a/third-party/java8-annotations/javax/annotation/ParametersAreNonnullByDefault.java +++ /dev/null @@ -1,28 +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: - * - * - * @see Nonnull - */ -@Documented -@Nonnull -@TypeQualifierDefault(ElementType.PARAMETER) -@Retention(RetentionPolicy.RUNTIME) -public @interface ParametersAreNonnullByDefault { -} diff --git a/third-party/java8-annotations/javax/annotation/meta/TypeQualifier.java b/third-party/java8-annotations/javax/annotation/meta/TypeQualifier.java deleted file mode 100644 index 99f63127277..00000000000 --- a/third-party/java8-annotations/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/third-party/java8-annotations/javax/annotation/meta/TypeQualifierDefault.java b/third-party/java8-annotations/javax/annotation/meta/TypeQualifierDefault.java deleted file mode 100644 index 0c8bd528fc4..00000000000 --- a/third-party/java8-annotations/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/third-party/java8-annotations/javax/annotation/meta/TypeQualifierNickname.java b/third-party/java8-annotations/javax/annotation/meta/TypeQualifierNickname.java deleted file mode 100644 index 40c998382da..00000000000 --- a/third-party/java8-annotations/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. - * - *

- * Thus, you might define a qualifier SocialSecurityNumber as follows: - *

- * - * - * - @Documented - @TypeQualifierNickname @Pattern("[0-9]{3}-[0-9]{2}-[0-9]{4}") - @Retention(RetentionPolicy.RUNTIME) - public @interface SocialSecurityNumber { - } - - * - * - */ -@Documented -@Target(ElementType.ANNOTATION_TYPE) -public @interface TypeQualifierNickname { - -} diff --git a/third-party/java8-annotations/javax/annotation/meta/TypeQualifierValidator.java b/third-party/java8-annotations/javax/annotation/meta/TypeQualifierValidator.java deleted file mode 100644 index 8053011296b..00000000000 --- a/third-party/java8-annotations/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 { - /** - * 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/third-party/java8-annotations/javax/annotation/meta/When.java b/third-party/java8-annotations/javax/annotation/meta/When.java deleted file mode 100644 index ec8a1bc7037..00000000000 --- a/third-party/java8-annotations/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; - -} diff --git a/third-party/annotations/javax/annotation/CheckForNull.java b/third-party/jsr305/javax/annotation/CheckForNull.java similarity index 100% rename from third-party/annotations/javax/annotation/CheckForNull.java rename to third-party/jsr305/javax/annotation/CheckForNull.java diff --git a/third-party/annotations/javax/annotation/Nonnull.java b/third-party/jsr305/javax/annotation/Nonnull.java similarity index 100% rename from third-party/annotations/javax/annotation/Nonnull.java rename to third-party/jsr305/javax/annotation/Nonnull.java diff --git a/third-party/annotations/javax/annotation/Nullable.java b/third-party/jsr305/javax/annotation/Nullable.java similarity index 100% rename from third-party/annotations/javax/annotation/Nullable.java rename to third-party/jsr305/javax/annotation/Nullable.java diff --git a/third-party/annotations/javax/annotation/ParametersAreNonnullByDefault.java b/third-party/jsr305/javax/annotation/ParametersAreNonnullByDefault.java similarity index 100% rename from third-party/annotations/javax/annotation/ParametersAreNonnullByDefault.java rename to third-party/jsr305/javax/annotation/ParametersAreNonnullByDefault.java diff --git a/third-party/annotations/javax/annotation/meta/TypeQualifier.java b/third-party/jsr305/javax/annotation/meta/TypeQualifier.java similarity index 100% rename from third-party/annotations/javax/annotation/meta/TypeQualifier.java rename to third-party/jsr305/javax/annotation/meta/TypeQualifier.java diff --git a/third-party/annotations/javax/annotation/meta/TypeQualifierDefault.java b/third-party/jsr305/javax/annotation/meta/TypeQualifierDefault.java similarity index 100% rename from third-party/annotations/javax/annotation/meta/TypeQualifierDefault.java rename to third-party/jsr305/javax/annotation/meta/TypeQualifierDefault.java diff --git a/third-party/annotations/javax/annotation/meta/TypeQualifierNickname.java b/third-party/jsr305/javax/annotation/meta/TypeQualifierNickname.java similarity index 100% rename from third-party/annotations/javax/annotation/meta/TypeQualifierNickname.java rename to third-party/jsr305/javax/annotation/meta/TypeQualifierNickname.java diff --git a/third-party/annotations/javax/annotation/meta/TypeQualifierValidator.java b/third-party/jsr305/javax/annotation/meta/TypeQualifierValidator.java similarity index 100% rename from third-party/annotations/javax/annotation/meta/TypeQualifierValidator.java rename to third-party/jsr305/javax/annotation/meta/TypeQualifierValidator.java diff --git a/third-party/annotations/javax/annotation/meta/When.java b/third-party/jsr305/javax/annotation/meta/When.java similarity index 100% rename from third-party/annotations/javax/annotation/meta/When.java rename to third-party/jsr305/javax/annotation/meta/When.java