diff --git a/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java b/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java
index b1a4280498a..762740a5917 100644
--- a/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java
+++ b/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java
@@ -403,6 +403,7 @@ import java.lang.module.ModuleFinder;
*
* @author Marianne Mueller
* @author Roland Schemers
+ * @since 1.2
*/
public final class RuntimePermission extends BasicPermission {
diff --git a/jdk/src/java.base/share/classes/java/lang/reflect/Array.java b/jdk/src/java.base/share/classes/java/lang/reflect/Array.java
index 2d6d717ad15..f43936df58c 100644
--- a/jdk/src/java.base/share/classes/java/lang/reflect/Array.java
+++ b/jdk/src/java.base/share/classes/java/lang/reflect/Array.java
@@ -36,6 +36,7 @@ import jdk.internal.HotSpotIntrinsicCandidate;
* conversion would occur.
*
* @author Nakul Saraiya
+ * @since 1.1
*/
public final
class Array {
diff --git a/jdk/src/java.base/share/classes/java/lang/reflect/Constructor.java b/jdk/src/java.base/share/classes/java/lang/reflect/Constructor.java
index 3f7a45581f0..a519d7feaf4 100644
--- a/jdk/src/java.base/share/classes/java/lang/reflect/Constructor.java
+++ b/jdk/src/java.base/share/classes/java/lang/reflect/Constructor.java
@@ -59,6 +59,7 @@ import java.util.StringJoiner;
*
* @author Kenneth Russell
* @author Nakul Saraiya
+ * @since 1.1
*/
public final class Constructor Implementations are free to implement the Cloneable interface.
*
* @author Benjamin Renaud
+ * @since 1.2
*
*
* @see MessageDigest
diff --git a/jdk/src/java.base/share/classes/java/security/NoSuchAlgorithmException.java b/jdk/src/java.base/share/classes/java/security/NoSuchAlgorithmException.java
index 951e44e41dc..24455d31064 100644
--- a/jdk/src/java.base/share/classes/java/security/NoSuchAlgorithmException.java
+++ b/jdk/src/java.base/share/classes/java/security/NoSuchAlgorithmException.java
@@ -30,6 +30,7 @@ package java.security;
* requested but is not available in the environment.
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public class NoSuchAlgorithmException extends GeneralSecurityException {
diff --git a/jdk/src/java.base/share/classes/java/security/NoSuchProviderException.java b/jdk/src/java.base/share/classes/java/security/NoSuchProviderException.java
index 9874adb145e..e2f9265be2a 100644
--- a/jdk/src/java.base/share/classes/java/security/NoSuchProviderException.java
+++ b/jdk/src/java.base/share/classes/java/security/NoSuchProviderException.java
@@ -30,6 +30,7 @@ package java.security;
* requested but is not available in the environment.
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public class NoSuchProviderException extends GeneralSecurityException {
diff --git a/jdk/src/java.base/share/classes/java/security/Permission.java b/jdk/src/java.base/share/classes/java/security/Permission.java
index 088f97c35a6..0eb0496ce3b 100644
--- a/jdk/src/java.base/share/classes/java/security/Permission.java
+++ b/jdk/src/java.base/share/classes/java/security/Permission.java
@@ -60,6 +60,7 @@ package java.security;
*
* @author Marianne Mueller
* @author Roland Schemers
+ * @since 1.2
*/
public abstract class Permission implements Guard, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/java/security/PermissionCollection.java b/jdk/src/java.base/share/classes/java/security/PermissionCollection.java
index 1aa41cab022..ca15210b177 100644
--- a/jdk/src/java.base/share/classes/java/security/PermissionCollection.java
+++ b/jdk/src/java.base/share/classes/java/security/PermissionCollection.java
@@ -91,6 +91,7 @@ import java.util.stream.StreamSupport;
*
*
* @author Roland Schemers
+ * @since 1.2
*/
public abstract class PermissionCollection implements java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/java/security/Permissions.java b/jdk/src/java.base/share/classes/java/security/Permissions.java
index 6bb5fa1a445..fa37fcb4698 100644
--- a/jdk/src/java.base/share/classes/java/security/Permissions.java
+++ b/jdk/src/java.base/share/classes/java/security/Permissions.java
@@ -75,6 +75,7 @@ import java.io.IOException;
*
* @author Marianne Mueller
* @author Roland Schemers
+ * @since 1.2
*
* @serial exclude
*/
diff --git a/jdk/src/java.base/share/classes/java/security/Policy.java b/jdk/src/java.base/share/classes/java/security/Policy.java
index bad4f522367..54663a5a0f8 100644
--- a/jdk/src/java.base/share/classes/java/security/Policy.java
+++ b/jdk/src/java.base/share/classes/java/security/Policy.java
@@ -78,6 +78,7 @@ import sun.security.util.SecurityConstants;
*
* @author Roland Schemers
* @author Gary Ellison
+ * @since 1.2
* @see java.security.Provider
* @see java.security.ProtectionDomain
* @see java.security.Permission
diff --git a/jdk/src/java.base/share/classes/java/security/Principal.java b/jdk/src/java.base/share/classes/java/security/Principal.java
index db1e7d5fd02..40ee260bca9 100644
--- a/jdk/src/java.base/share/classes/java/security/Principal.java
+++ b/jdk/src/java.base/share/classes/java/security/Principal.java
@@ -35,6 +35,7 @@ import javax.security.auth.Subject;
* @see java.security.cert.X509Certificate
*
* @author Li Gong
+ * @since 1.1
*/
public interface Principal {
diff --git a/jdk/src/java.base/share/classes/java/security/PrivateKey.java b/jdk/src/java.base/share/classes/java/security/PrivateKey.java
index 7d8a7ea7041..0bc933bd901 100644
--- a/jdk/src/java.base/share/classes/java/security/PrivateKey.java
+++ b/jdk/src/java.base/share/classes/java/security/PrivateKey.java
@@ -54,6 +54,7 @@ package java.security;
*
* @author Benjamin Renaud
* @author Josh Bloch
+ * @since 1.1
*/
public interface PrivateKey extends Key, javax.security.auth.Destroyable {
diff --git a/jdk/src/java.base/share/classes/java/security/PrivilegedAction.java b/jdk/src/java.base/share/classes/java/security/PrivilegedAction.java
index b993cea4d2f..fec7a37d9ba 100644
--- a/jdk/src/java.base/share/classes/java/security/PrivilegedAction.java
+++ b/jdk/src/java.base/share/classes/java/security/PrivilegedAction.java
@@ -34,6 +34,7 @@ package java.security;
* throw checked exceptions must use {@code PrivilegedExceptionAction}
* instead.
*
+ * @since 1.2
* @see AccessController
* @see AccessController#doPrivileged(PrivilegedAction)
* @see PrivilegedExceptionAction
diff --git a/jdk/src/java.base/share/classes/java/security/PrivilegedActionException.java b/jdk/src/java.base/share/classes/java/security/PrivilegedActionException.java
index 2de69698599..ebc12e74e0b 100644
--- a/jdk/src/java.base/share/classes/java/security/PrivilegedActionException.java
+++ b/jdk/src/java.base/share/classes/java/security/PrivilegedActionException.java
@@ -43,6 +43,7 @@ package java.security;
* cause, and may be accessed via the {@link Throwable#getCause()}
* method, as well as the aforementioned "legacy method."
*
+ * @since 1.2
* @see PrivilegedExceptionAction
* @see AccessController#doPrivileged(PrivilegedExceptionAction)
* @see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext)
diff --git a/jdk/src/java.base/share/classes/java/security/PrivilegedExceptionAction.java b/jdk/src/java.base/share/classes/java/security/PrivilegedExceptionAction.java
index 59a9ba7dc18..35b9abfe354 100644
--- a/jdk/src/java.base/share/classes/java/security/PrivilegedExceptionAction.java
+++ b/jdk/src/java.base/share/classes/java/security/PrivilegedExceptionAction.java
@@ -35,6 +35,7 @@ package java.security;
* computations that do not throw
* checked exceptions should use {@code PrivilegedAction} instead.
*
+ * @since 1.2
* @see AccessController
* @see AccessController#doPrivileged(PrivilegedExceptionAction)
* @see AccessController#doPrivileged(PrivilegedExceptionAction,
diff --git a/jdk/src/java.base/share/classes/java/security/ProtectionDomain.java b/jdk/src/java.base/share/classes/java/security/ProtectionDomain.java
index 1a9ac151a70..365096f619a 100644
--- a/jdk/src/java.base/share/classes/java/security/ProtectionDomain.java
+++ b/jdk/src/java.base/share/classes/java/security/ProtectionDomain.java
@@ -59,6 +59,7 @@ import sun.security.util.SecurityConstants;
* @author Li Gong
* @author Roland Schemers
* @author Gary Ellison
+ * @since 1.2
*/
public class ProtectionDomain {
diff --git a/jdk/src/java.base/share/classes/java/security/Provider.java b/jdk/src/java.base/share/classes/java/security/Provider.java
index cc5313e2a19..f17cfca932a 100644
--- a/jdk/src/java.base/share/classes/java/security/Provider.java
+++ b/jdk/src/java.base/share/classes/java/security/Provider.java
@@ -102,6 +102,7 @@ import java.util.function.Function;
*
* @author Benjamin Renaud
* @author Andreas Sterbenz
+ * @since 1.1
*/
public abstract class Provider extends Properties {
diff --git a/jdk/src/java.base/share/classes/java/security/ProviderException.java b/jdk/src/java.base/share/classes/java/security/ProviderException.java
index b372ee75752..48c3638a524 100644
--- a/jdk/src/java.base/share/classes/java/security/ProviderException.java
+++ b/jdk/src/java.base/share/classes/java/security/ProviderException.java
@@ -32,6 +32,7 @@ package java.security;
* throw specialized, provider-specific runtime errors.
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public class ProviderException extends RuntimeException {
diff --git a/jdk/src/java.base/share/classes/java/security/PublicKey.java b/jdk/src/java.base/share/classes/java/security/PublicKey.java
index df49807eea4..986f9d0c72f 100644
--- a/jdk/src/java.base/share/classes/java/security/PublicKey.java
+++ b/jdk/src/java.base/share/classes/java/security/PublicKey.java
@@ -34,6 +34,7 @@ package java.security;
* See, for example, the DSAPublicKey interface in
* {@code java.security.interfaces}.
*
+ * @since 1.1
* @see Key
* @see PrivateKey
* @see Certificate
diff --git a/jdk/src/java.base/share/classes/java/security/SecureClassLoader.java b/jdk/src/java.base/share/classes/java/security/SecureClassLoader.java
index 4f0bfa4c27f..a6b8b6cffe6 100644
--- a/jdk/src/java.base/share/classes/java/security/SecureClassLoader.java
+++ b/jdk/src/java.base/share/classes/java/security/SecureClassLoader.java
@@ -39,6 +39,7 @@ import sun.security.util.Debug;
*
* @author Li Gong
* @author Roland Schemers
+ * @since 1.2
*/
public class SecureClassLoader extends ClassLoader {
/*
diff --git a/jdk/src/java.base/share/classes/java/security/SecureRandom.java b/jdk/src/java.base/share/classes/java/security/SecureRandom.java
index ae1f04f2896..254f378aac6 100644
--- a/jdk/src/java.base/share/classes/java/security/SecureRandom.java
+++ b/jdk/src/java.base/share/classes/java/security/SecureRandom.java
@@ -143,6 +143,7 @@ import sun.security.util.Debug;
*
* @author Benjamin Renaud
* @author Josh Bloch
+ * @since 1.1
*/
public class SecureRandom extends java.util.Random {
diff --git a/jdk/src/java.base/share/classes/java/security/Security.java b/jdk/src/java.base/share/classes/java/security/Security.java
index 6c341abc92d..2431f1e1745 100644
--- a/jdk/src/java.base/share/classes/java/security/Security.java
+++ b/jdk/src/java.base/share/classes/java/security/Security.java
@@ -45,6 +45,7 @@ import sun.security.jca.*;
* {@code conf/security/java.security} in the Java installation directory.
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public final class Security {
diff --git a/jdk/src/java.base/share/classes/java/security/SecurityPermission.java b/jdk/src/java.base/share/classes/java/security/SecurityPermission.java
index e0d25c9689f..5211c23735d 100644
--- a/jdk/src/java.base/share/classes/java/security/SecurityPermission.java
+++ b/jdk/src/java.base/share/classes/java/security/SecurityPermission.java
@@ -333,6 +333,7 @@ import java.util.StringTokenizer;
*
* @author Marianne Mueller
* @author Roland Schemers
+ * @since 1.2
*/
public final class SecurityPermission extends BasicPermission {
diff --git a/jdk/src/java.base/share/classes/java/security/Signature.java b/jdk/src/java.base/share/classes/java/security/Signature.java
index fd5dfad650a..c7c25831a35 100644
--- a/jdk/src/java.base/share/classes/java/security/Signature.java
+++ b/jdk/src/java.base/share/classes/java/security/Signature.java
@@ -113,6 +113,7 @@ import sun.security.jca.GetInstance.Instance;
* other algorithms are supported.
*
* @author Benjamin Renaud
+ * @since 1.1
*
*/
diff --git a/jdk/src/java.base/share/classes/java/security/SignatureException.java b/jdk/src/java.base/share/classes/java/security/SignatureException.java
index 2e1fa592f60..7788e12301b 100644
--- a/jdk/src/java.base/share/classes/java/security/SignatureException.java
+++ b/jdk/src/java.base/share/classes/java/security/SignatureException.java
@@ -29,6 +29,7 @@ package java.security;
* This is the generic Signature exception.
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public class SignatureException extends GeneralSecurityException {
diff --git a/jdk/src/java.base/share/classes/java/security/SignatureSpi.java b/jdk/src/java.base/share/classes/java/security/SignatureSpi.java
index 9be7701a2fa..99926824bd8 100644
--- a/jdk/src/java.base/share/classes/java/security/SignatureSpi.java
+++ b/jdk/src/java.base/share/classes/java/security/SignatureSpi.java
@@ -44,6 +44,7 @@ import sun.security.jca.JCAUtil;
* of a particular signature algorithm.
*
* @author Benjamin Renaud
+ * @since 1.2
*
*
* @see Signature
diff --git a/jdk/src/java.base/share/classes/java/security/SignedObject.java b/jdk/src/java.base/share/classes/java/security/SignedObject.java
index 94d4d0ae8a0..810c5706579 100644
--- a/jdk/src/java.base/share/classes/java/security/SignedObject.java
+++ b/jdk/src/java.base/share/classes/java/security/SignedObject.java
@@ -114,6 +114,7 @@ import java.io.*;
* @see Signature
*
* @author Li Gong
+ * @since 1.2
*/
public final class SignedObject implements Serializable {
diff --git a/jdk/src/java.base/share/classes/java/security/Signer.java b/jdk/src/java.base/share/classes/java/security/Signer.java
index 3c53f6c055f..88852b2e4be 100644
--- a/jdk/src/java.base/share/classes/java/security/Signer.java
+++ b/jdk/src/java.base/share/classes/java/security/Signer.java
@@ -38,6 +38,7 @@ import java.io.*;
* @see Identity
*
* @author Benjamin Renaud
+ * @since 1.1
*
* @deprecated This class is no longer used. Its functionality has been
* replaced by {@code java.security.KeyStore}, the
diff --git a/jdk/src/java.base/share/classes/java/security/UnresolvedPermission.java b/jdk/src/java.base/share/classes/java/security/UnresolvedPermission.java
index 9827788806a..b5dc02dcb38 100644
--- a/jdk/src/java.base/share/classes/java/security/UnresolvedPermission.java
+++ b/jdk/src/java.base/share/classes/java/security/UnresolvedPermission.java
@@ -96,6 +96,7 @@ import java.security.cert.*;
*
*
* @author Roland Schemers
+ * @since 1.2
*/
public final class UnresolvedPermission extends Permission
diff --git a/jdk/src/java.base/share/classes/java/security/UnresolvedPermissionCollection.java b/jdk/src/java.base/share/classes/java/security/UnresolvedPermissionCollection.java
index 5fdc3cbc8e0..bd4fb7562e1 100644
--- a/jdk/src/java.base/share/classes/java/security/UnresolvedPermissionCollection.java
+++ b/jdk/src/java.base/share/classes/java/security/UnresolvedPermissionCollection.java
@@ -43,6 +43,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
*
*
* @author Roland Schemers
+ * @since 1.2
*
* @serial include
*/
diff --git a/jdk/src/java.base/share/classes/java/security/acl/Acl.java b/jdk/src/java.base/share/classes/java/security/acl/Acl.java
index 0b2f374a2c9..423afdd695e 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/Acl.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/Acl.java
@@ -82,6 +82,7 @@ import java.security.Principal;
* @see java.security.acl.Acl#getPermissions
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/AclEntry.java b/jdk/src/java.base/share/classes/java/security/acl/AclEntry.java
index b785a05f3d7..242470876a6 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/AclEntry.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/AclEntry.java
@@ -50,6 +50,7 @@ import java.security.Principal;
* @see java.security.acl.Acl
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/AclNotFoundException.java b/jdk/src/java.base/share/classes/java/security/acl/AclNotFoundException.java
index c07852c5490..1585f93637d 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/AclNotFoundException.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/AclNotFoundException.java
@@ -30,6 +30,7 @@ package java.security.acl;
* non-existent ACL (Access Control List).
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/Group.java b/jdk/src/java.base/share/classes/java/security/acl/Group.java
index f68d5dae13c..6ce62330d87 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/Group.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/Group.java
@@ -39,6 +39,7 @@ import java.security.Principal;
* Principal or Group.
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/LastOwnerException.java b/jdk/src/java.base/share/classes/java/security/acl/LastOwnerException.java
index dab93db9c1e..3d655d7bf48 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/LastOwnerException.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/LastOwnerException.java
@@ -32,6 +32,7 @@ package java.security.acl;
* @see java.security.acl.Owner#deleteOwner
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/NotOwnerException.java b/jdk/src/java.base/share/classes/java/security/acl/NotOwnerException.java
index 3c7da3ebc8a..cf3b5975a7a 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/NotOwnerException.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/NotOwnerException.java
@@ -31,6 +31,7 @@ package java.security.acl;
* the object, but the Principal attempting the modification is not an owner.
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/acl/Owner.java b/jdk/src/java.base/share/classes/java/security/acl/Owner.java
index 476af4a0a80..0ba70035057 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/Owner.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/Owner.java
@@ -34,6 +34,7 @@ import java.security.Principal;
* interface.) The initial owner Principal should be specified as an
* argument to the constructor of the class implementing this interface.
*
+ * @since 1.1
* @see java.security.acl.Acl
*
* @deprecated This package has been replaced by {@code java.security.Policy}
diff --git a/jdk/src/java.base/share/classes/java/security/acl/Permission.java b/jdk/src/java.base/share/classes/java/security/acl/Permission.java
index 15b77429413..2c867490b6b 100644
--- a/jdk/src/java.base/share/classes/java/security/acl/Permission.java
+++ b/jdk/src/java.base/share/classes/java/security/acl/Permission.java
@@ -31,6 +31,7 @@ package java.security.acl;
* a particular type of access to a resource.
*
* @author Satish Dharmaraj
+ * @since 1.1
*
* @deprecated This package has been replaced by {@code java.security.Policy}
* and related classes since 1.2.
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CRLException.java b/jdk/src/java.base/share/classes/java/security/cert/CRLException.java
index 7a854316bbd..4b648e9ab9e 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CRLException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CRLException.java
@@ -31,6 +31,7 @@ import java.security.GeneralSecurityException;
* CRL (Certificate Revocation List) Exception.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public class CRLException extends GeneralSecurityException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/Certificate.java b/jdk/src/java.base/share/classes/java/security/cert/Certificate.java
index 32662ceea15..ad72e638d39 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/Certificate.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/Certificate.java
@@ -57,6 +57,7 @@ import sun.security.x509.X509CertImpl;
* @see CertificateFactory
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public abstract class Certificate implements java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CertificateEncodingException.java b/jdk/src/java.base/share/classes/java/security/cert/CertificateEncodingException.java
index 618ee0a55b9..c30b96c46c8 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CertificateEncodingException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CertificateEncodingException.java
@@ -30,6 +30,7 @@ package java.security.cert;
* occurs while attempting to encode a certificate.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public class CertificateEncodingException extends CertificateException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CertificateException.java b/jdk/src/java.base/share/classes/java/security/cert/CertificateException.java
index f663054000b..ce73103aaab 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CertificateException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CertificateException.java
@@ -31,6 +31,7 @@ import java.security.GeneralSecurityException;
* This exception indicates one of a variety of certificate problems.
*
* @author Hemma Prafullchandra
+ * @since 1.2
* @see Certificate
*/
public class CertificateException extends GeneralSecurityException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CertificateExpiredException.java b/jdk/src/java.base/share/classes/java/security/cert/CertificateExpiredException.java
index 9de0c236c13..635a32f5cda 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CertificateExpiredException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CertificateExpiredException.java
@@ -32,6 +32,7 @@ package java.security.cert;
* of the certificate.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public class CertificateExpiredException extends CertificateException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CertificateNotYetValidException.java b/jdk/src/java.base/share/classes/java/security/cert/CertificateNotYetValidException.java
index e8722bd339d..75f3e150283 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CertificateNotYetValidException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CertificateNotYetValidException.java
@@ -32,6 +32,7 @@ package java.security.cert;
* validity period.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public class CertificateNotYetValidException extends CertificateException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/CertificateParsingException.java b/jdk/src/java.base/share/classes/java/security/cert/CertificateParsingException.java
index 06a7d603f29..36fa9650874 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/CertificateParsingException.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/CertificateParsingException.java
@@ -31,6 +31,7 @@ package java.security.cert;
* are found in the Certificate.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public class CertificateParsingException extends CertificateException {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/X509CRL.java b/jdk/src/java.base/share/classes/java/security/cert/X509CRL.java
index 21332907357..d23e3416272 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/X509CRL.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/X509CRL.java
@@ -102,6 +102,7 @@ import sun.security.x509.X509CRLImpl;
* }
*
* @author Hemma Prafullchandra
+ * @since 1.2
*
*
* @see CRL
diff --git a/jdk/src/java.base/share/classes/java/security/cert/X509CRLEntry.java b/jdk/src/java.base/share/classes/java/security/cert/X509CRLEntry.java
index 268fa819587..4028738dae9 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/X509CRLEntry.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/X509CRLEntry.java
@@ -62,6 +62,7 @@ import sun.security.x509.X509CRLEntryImpl;
* @see X509Extension
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public abstract class X509CRLEntry implements X509Extension {
diff --git a/jdk/src/java.base/share/classes/java/security/cert/X509Certificate.java b/jdk/src/java.base/share/classes/java/security/cert/X509Certificate.java
index 174d6a73838..ab4391e53d5 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/X509Certificate.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/X509Certificate.java
@@ -95,6 +95,7 @@ import sun.security.x509.X509CertImpl;
*
*
* @author Hemma Prafullchandra
+ * @since 1.2
*
*
* @see Certificate
diff --git a/jdk/src/java.base/share/classes/java/security/cert/X509Extension.java b/jdk/src/java.base/share/classes/java/security/cert/X509Extension.java
index 9a988f4dc93..b7533a2c697 100644
--- a/jdk/src/java.base/share/classes/java/security/cert/X509Extension.java
+++ b/jdk/src/java.base/share/classes/java/security/cert/X509Extension.java
@@ -65,6 +65,7 @@ import java.util.Set;
* be handled by a Class that understands the extension.
*
* @author Hemma Prafullchandra
+ * @since 1.2
*/
public interface X509Extension {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/DSAKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/DSAKey.java
index d78b3e19853..64ac8c4b931 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/DSAKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/DSAKey.java
@@ -35,6 +35,7 @@ package java.security.interfaces;
*
* @author Benjamin Renaud
* @author Josh Bloch
+ * @since 1.1
*/
public interface DSAKey {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java b/jdk/src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java
index 558ac4419c2..dc231db419c 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java
@@ -65,6 +65,7 @@ import java.security.*;
* Note: Some earlier implementations of this interface may not support
* larger sizes of DSA parameters such as 2048 and 3072-bit.
*
+ * @since 1.1
* @see java.security.KeyPairGenerator
*/
public interface DSAKeyPairGenerator {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/DSAParams.java b/jdk/src/java.base/share/classes/java/security/interfaces/DSAParams.java
index 8c46ed57e27..2eafe879e7d 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/DSAParams.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/DSAParams.java
@@ -38,6 +38,7 @@ import java.math.BigInteger;
*
* @author Benjamin Renaud
* @author Josh Bloch
+ * @since 1.1
*/
public interface DSAParams {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java
index 81ab3586f69..b23a5c14d42 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java
@@ -37,6 +37,7 @@ import java.math.BigInteger;
* @see DSAPublicKey
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public interface DSAPrivateKey extends DSAKey, java.security.PrivateKey {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java
index e56b795ae70..fb4a2f3226e 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java
@@ -37,6 +37,7 @@ import java.math.BigInteger;
* @see DSAPrivateKey
*
* @author Benjamin Renaud
+ * @since 1.1
*/
public interface DSAPublicKey extends DSAKey, java.security.PublicKey {
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java
index 0408feabbbc..89dd478c831 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java
@@ -32,6 +32,7 @@ import java.math.BigInteger;
* using the Chinese Remainder Theorem (CRT) information values.
*
* @author Jan Luehe
+ * @since 1.2
*
*
* @see RSAPrivateKey
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java
index 5d69ad6837e..390da4e89fd 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java
@@ -31,6 +31,7 @@ import java.math.BigInteger;
* The interface to an RSA private key.
*
* @author Jan Luehe
+ * @since 1.2
*
*
* @see RSAPrivateCrtKey
diff --git a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java
index a698c05f738..f19530604d7 100644
--- a/jdk/src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java
+++ b/jdk/src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java
@@ -31,6 +31,7 @@ import java.math.BigInteger;
* The interface to an RSA public key.
*
* @author Jan Luehe
+ * @since 1.2
*
*/
diff --git a/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateCrtKeySpec.java b/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateCrtKeySpec.java
index d0ba70be443..1c66e537983 100644
--- a/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateCrtKeySpec.java
+++ b/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateCrtKeySpec.java
@@ -33,6 +33,7 @@ import java.math.BigInteger;
* efficiency.
*
* @author Jan Luehe
+ * @since 1.2
*
*
* @see java.security.Key
diff --git a/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateKeySpec.java b/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateKeySpec.java
index e7491461684..6a750354e1b 100644
--- a/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateKeySpec.java
+++ b/jdk/src/java.base/share/classes/java/security/spec/RSAPrivateKeySpec.java
@@ -31,6 +31,7 @@ import java.math.BigInteger;
* This class specifies an RSA private key.
*
* @author Jan Luehe
+ * @since 1.2
*
*
* @see java.security.Key
diff --git a/jdk/src/java.base/share/classes/java/security/spec/RSAPublicKeySpec.java b/jdk/src/java.base/share/classes/java/security/spec/RSAPublicKeySpec.java
index 9a944f962b1..68ce197c939 100644
--- a/jdk/src/java.base/share/classes/java/security/spec/RSAPublicKeySpec.java
+++ b/jdk/src/java.base/share/classes/java/security/spec/RSAPublicKeySpec.java
@@ -31,6 +31,7 @@ import java.math.BigInteger;
* This class specifies an RSA public key.
*
* @author Jan Luehe
+ * @since 1.2
*
*
* @see java.security.Key
diff --git a/jdk/src/java.base/share/classes/java/text/BreakIterator.java b/jdk/src/java.base/share/classes/java/text/BreakIterator.java
index 0c780258e47..ffb5d5938e5 100644
--- a/jdk/src/java.base/share/classes/java/text/BreakIterator.java
+++ b/jdk/src/java.base/share/classes/java/text/BreakIterator.java
@@ -221,6 +221,7 @@ import sun.util.locale.provider.LocaleServiceProviderPool;
* and the next is a word; otherwise, it's the material between words.)
*
*
+ * @since 1.1
* @see CharacterIterator
*
*/
diff --git a/jdk/src/java.base/share/classes/java/text/CharacterIterator.java b/jdk/src/java.base/share/classes/java/text/CharacterIterator.java
index efa7ab413b0..b6e5e8b1196 100644
--- a/jdk/src/java.base/share/classes/java/text/CharacterIterator.java
+++ b/jdk/src/java.base/share/classes/java/text/CharacterIterator.java
@@ -98,6 +98,7 @@ package java.text;
* }
* }
*
+ * @since 1.1
* @see StringCharacterIterator
* @see AttributedCharacterIterator
*/
diff --git a/jdk/src/java.base/share/classes/java/text/ChoiceFormat.java b/jdk/src/java.base/share/classes/java/text/ChoiceFormat.java
index 8f76aaedf04..13697dfcc8f 100644
--- a/jdk/src/java.base/share/classes/java/text/ChoiceFormat.java
+++ b/jdk/src/java.base/share/classes/java/text/ChoiceFormat.java
@@ -163,6 +163,7 @@ import java.util.Arrays;
* @see DecimalFormat
* @see MessageFormat
* @author Mark Davis
+ * @since 1.1
*/
public class ChoiceFormat extends NumberFormat {
diff --git a/jdk/src/java.base/share/classes/java/text/CollationElementIterator.java b/jdk/src/java.base/share/classes/java/text/CollationElementIterator.java
index 7060ac0c8b6..9da55b26625 100644
--- a/jdk/src/java.base/share/classes/java/text/CollationElementIterator.java
+++ b/jdk/src/java.base/share/classes/java/text/CollationElementIterator.java
@@ -104,6 +104,7 @@ import sun.text.normalizer.NormalizerBase;
* @see Collator
* @see RuleBasedCollator
* @author Helena Shih, Laura Werner, Richard Gillam
+ * @since 1.1
*/
public final class CollationElementIterator
{
diff --git a/jdk/src/java.base/share/classes/java/text/CollationKey.java b/jdk/src/java.base/share/classes/java/text/CollationKey.java
index 4f9c3c6ac49..318f3c4d26b 100644
--- a/jdk/src/java.base/share/classes/java/text/CollationKey.java
+++ b/jdk/src/java.base/share/classes/java/text/CollationKey.java
@@ -95,6 +95,7 @@ package java.text;
* @see Collator
* @see RuleBasedCollator
* @author Helena Shih
+ * @since 1.1
*/
public abstract class CollationKey implements ComparableformatToCharacterIterator.
*
* @author Mark Davis
+ * @since 1.1
* @see java.text.Format
*/
public class FieldPosition {
diff --git a/jdk/src/java.base/share/classes/java/text/Format.java b/jdk/src/java.base/share/classes/java/text/Format.java
index ee6fb4d1fb7..be324eb63ba 100644
--- a/jdk/src/java.base/share/classes/java/text/Format.java
+++ b/jdk/src/java.base/share/classes/java/text/Format.java
@@ -129,6 +129,7 @@ import java.io.Serializable;
* @see java.text.DateFormat
* @see java.text.MessageFormat
* @author Mark Davis
+ * @since 1.1
*/
public abstract class Format implements Serializable, Cloneable {
diff --git a/jdk/src/java.base/share/classes/java/text/MessageFormat.java b/jdk/src/java.base/share/classes/java/text/MessageFormat.java
index 1275f3cc33a..b80eb054f51 100644
--- a/jdk/src/java.base/share/classes/java/text/MessageFormat.java
+++ b/jdk/src/java.base/share/classes/java/text/MessageFormat.java
@@ -344,6 +344,7 @@ import java.util.Locale;
* @see SimpleDateFormat
*
* @author Mark Davis
+ * @since 1.1
*/
public class MessageFormat extends Format {
diff --git a/jdk/src/java.base/share/classes/java/text/NumberFormat.java b/jdk/src/java.base/share/classes/java/text/NumberFormat.java
index 7e86bbe35d5..86953f21c9a 100644
--- a/jdk/src/java.base/share/classes/java/text/NumberFormat.java
+++ b/jdk/src/java.base/share/classes/java/text/NumberFormat.java
@@ -185,6 +185,7 @@ import sun.util.locale.provider.LocaleServiceProviderPool;
* @see ChoiceFormat
* @author Mark Davis
* @author Helena Shih
+ * @since 1.1
*/
public abstract class NumberFormat extends Format {
diff --git a/jdk/src/java.base/share/classes/java/text/ParseException.java b/jdk/src/java.base/share/classes/java/text/ParseException.java
index f9ad001fa52..264c4803fc5 100644
--- a/jdk/src/java.base/share/classes/java/text/ParseException.java
+++ b/jdk/src/java.base/share/classes/java/text/ParseException.java
@@ -45,6 +45,7 @@ package java.text;
* @see java.text.Format
* @see java.text.FieldPosition
* @author Mark Davis
+ * @since 1.1
*/
public
class ParseException extends Exception {
diff --git a/jdk/src/java.base/share/classes/java/text/ParsePosition.java b/jdk/src/java.base/share/classes/java/text/ParsePosition.java
index be3ffce61eb..85e5c9d9e3c 100644
--- a/jdk/src/java.base/share/classes/java/text/ParsePosition.java
+++ b/jdk/src/java.base/share/classes/java/text/ParsePosition.java
@@ -51,6 +51,7 @@ package java.text;
* records the current position.
*
* @author Mark Davis
+ * @since 1.1
* @see java.text.Format
*/
diff --git a/jdk/src/java.base/share/classes/java/text/RuleBasedCollator.java b/jdk/src/java.base/share/classes/java/text/RuleBasedCollator.java
index e3c2c8c309e..c8140a5efa0 100644
--- a/jdk/src/java.base/share/classes/java/text/RuleBasedCollator.java
+++ b/jdk/src/java.base/share/classes/java/text/RuleBasedCollator.java
@@ -242,6 +242,7 @@ import java.util.Locale;
* @see Collator
* @see CollationElementIterator
* @author Helena Shih, Laura Werner, Richard Gillam
+ * @since 1.1
*/
public class RuleBasedCollator extends Collator{
// IMPLEMENTATION NOTES: The implementation of the collation algorithm is
diff --git a/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java b/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java
index 70987ad99df..4990338e1a6 100644
--- a/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java
+++ b/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java
@@ -434,6 +434,7 @@ import sun.util.locale.provider.LocaleProviderAdapter;
* @see DateFormat
* @see DateFormatSymbols
* @author Mark Davis, Chen-Lieh Huang, Alan Liu
+ * @since 1.1
*/
public class SimpleDateFormat extends DateFormat {
diff --git a/jdk/src/java.base/share/classes/java/text/StringCharacterIterator.java b/jdk/src/java.base/share/classes/java/text/StringCharacterIterator.java
index 66b5be65157..b5d510cd642 100644
--- a/jdk/src/java.base/share/classes/java/text/StringCharacterIterator.java
+++ b/jdk/src/java.base/share/classes/java/text/StringCharacterIterator.java
@@ -47,6 +47,7 @@ package java.text;
* entire String.
*
* @see CharacterIterator
+ * @since 1.1
*/
public final class StringCharacterIterator implements CharacterIterator
diff --git a/jdk/src/java.base/share/classes/java/util/concurrent/CompletionService.java b/jdk/src/java.base/share/classes/java/util/concurrent/CompletionService.java
index f647e213128..5e5232efa7a 100644
--- a/jdk/src/java.base/share/classes/java/util/concurrent/CompletionService.java
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/CompletionService.java
@@ -57,6 +57,8 @@ package java.util.concurrent;
* happen-before
* actions taken by that task, which in turn happen-before
* actions following a successful return from the corresponding {@code take()}.
+ *
+ * @since 1.5
*/
public interface CompletionService
All default handler implementations must provide a public
* zero-argument constructor.
*
+ * @since 1.4
* @see java.security.Security security properties
*/
public interface CallbackHandler {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/ChoiceCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/ChoiceCallback.java
index 26cfd23e30c..564a7984551 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/ChoiceCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/ChoiceCallback.java
@@ -31,6 +31,7 @@ package javax.security.auth.callback;
* method of a {@code CallbackHandler} to display a list of choices
* and to retrieve the selected choice(s).
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class ChoiceCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/ConfirmationCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/ConfirmationCallback.java
index 56fead57f0c..99bb5f8c17f 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/ConfirmationCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/ConfirmationCallback.java
@@ -31,6 +31,7 @@ package javax.security.auth.callback;
* method of a {@code CallbackHandler} to ask for YES/NO,
* OK/CANCEL, YES/NO/CANCEL or other similar confirmations.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class ConfirmationCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/LanguageCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/LanguageCallback.java
index bcd2fdf0741..c0bf6e31896 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/LanguageCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/LanguageCallback.java
@@ -33,6 +33,7 @@ import java.util.Locale;
* method of a {@code CallbackHandler} to retrieve the {@code Locale}
* used for localizing text.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class LanguageCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/NameCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/NameCallback.java
index 500f8d1ee10..5c289df2c43 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/NameCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/NameCallback.java
@@ -30,6 +30,7 @@ package javax.security.auth.callback;
* {@code NameCallback} to the {@code handle}
* method of a {@code CallbackHandler} to retrieve name information.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class NameCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/PasswordCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/PasswordCallback.java
index b35eaa8d0e4..63e52fea112 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/PasswordCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/PasswordCallback.java
@@ -30,6 +30,7 @@ package javax.security.auth.callback;
* {@code PasswordCallback} to the {@code handle}
* method of a {@code CallbackHandler} to retrieve password information.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class PasswordCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/TextInputCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/TextInputCallback.java
index b9f93b73e44..0fea6a3c7d6 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/TextInputCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/TextInputCallback.java
@@ -31,6 +31,7 @@ package javax.security.auth.callback;
* method of a {@code CallbackHandler} to retrieve generic text
* information.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class TextInputCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/TextOutputCallback.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/TextOutputCallback.java
index 400a2c6e3ed..ba4551e3880 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/TextOutputCallback.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/TextOutputCallback.java
@@ -31,6 +31,7 @@ package javax.security.auth.callback;
* method of a {@code CallbackHandler} to display information messages,
* warning messages and error messages.
*
+ * @since 1.4
* @see javax.security.auth.callback.CallbackHandler
*/
public class TextOutputCallback implements Callback, java.io.Serializable {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/callback/UnsupportedCallbackException.java b/jdk/src/java.base/share/classes/javax/security/auth/callback/UnsupportedCallbackException.java
index 605a3e35ebb..be11761f7b2 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/callback/UnsupportedCallbackException.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/callback/UnsupportedCallbackException.java
@@ -29,6 +29,7 @@ package javax.security.auth.callback;
* Signals that a {@code CallbackHandler} does not
* recognize a particular {@code Callback}.
*
+ * @since 1.4
*/
public class UnsupportedCallbackException extends Exception {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/AccountExpiredException.java b/jdk/src/java.base/share/classes/javax/security/auth/login/AccountExpiredException.java
index 43dd84eb527..e979fc7cd52 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/AccountExpiredException.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/AccountExpiredException.java
@@ -35,6 +35,7 @@ package javax.security.auth.login;
* throws this exception to notify the application. The application can
* then take the appropriate steps to notify the user.
*
+ * @since 1.4
*/
public class AccountExpiredException extends AccountException {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/AppConfigurationEntry.java b/jdk/src/java.base/share/classes/javax/security/auth/login/AppConfigurationEntry.java
index 1e9acbf051a..f567b3be871 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/AppConfigurationEntry.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/AppConfigurationEntry.java
@@ -39,6 +39,7 @@ import java.util.Collections;
* options. Please refer to the {@code Configuration} class for
* more information on the different control flags and their semantics.
*
+ * @since 1.4
* @see javax.security.auth.login.Configuration
*/
public class AppConfigurationEntry {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/Configuration.java b/jdk/src/java.base/share/classes/javax/security/auth/login/Configuration.java
index 1f0b6c95597..e08bf3eb3d7 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/Configuration.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/Configuration.java
@@ -182,6 +182,7 @@ import sun.security.jca.GetInstance;
* Java Security Standard Algorithm Names Specification
* for a list of standard Configuration types.
*
+ * @since 1.4
* @see javax.security.auth.login.LoginContext
* @see java.security.Security security properties
*/
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/CredentialExpiredException.java b/jdk/src/java.base/share/classes/javax/security/auth/login/CredentialExpiredException.java
index 8e279bd604b..b0914d2c914 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/CredentialExpiredException.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/CredentialExpiredException.java
@@ -37,6 +37,7 @@ package javax.security.auth.login;
* the application. The application can then take the appropriate
* steps to assist the user in updating the password.
*
+ * @since 1.4
*/
public class CredentialExpiredException extends CredentialException {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/FailedLoginException.java b/jdk/src/java.base/share/classes/javax/security/auth/login/FailedLoginException.java
index 895583138db..82170a99fc9 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/FailedLoginException.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/FailedLoginException.java
@@ -32,6 +32,7 @@ package javax.security.auth.login;
* For example, a {@code LoginModule} throws this exception if
* the user entered an incorrect password.
*
+ * @since 1.4
*/
public class FailedLoginException extends LoginException {
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/LoginContext.java b/jdk/src/java.base/share/classes/javax/security/auth/login/LoginContext.java
index af46b200701..deaf3aac426 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/LoginContext.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/LoginContext.java
@@ -182,6 +182,7 @@ import sun.security.util.ResourcesMgr;
*
*
*
+ * @since 1.4
* @see java.security.Security
* @see javax.security.auth.AuthPermission
* @see javax.security.auth.Subject
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/login/LoginException.java b/jdk/src/java.base/share/classes/javax/security/auth/login/LoginException.java
index 065f57f986c..3861cfcf0b9 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/login/LoginException.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/login/LoginException.java
@@ -28,6 +28,7 @@ package javax.security.auth.login;
/**
* This is the basic login exception.
*
+ * @since 1.4
* @see javax.security.auth.login.LoginContext
*/
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/spi/LoginModule.java b/jdk/src/java.base/share/classes/javax/security/auth/spi/LoginModule.java
index 3206b5a5d27..1c19b7d8832 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/spi/LoginModule.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/spi/LoginModule.java
@@ -122,6 +122,7 @@ import java.util.Map;
* no arguments. This allows classes which load the {@code LoginModule}
* to instantiate it.
*
+ * @since 1.4
* @see javax.security.auth.login.LoginContext
* @see javax.security.auth.login.Configuration
*/
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/x500/X500PrivateCredential.java b/jdk/src/java.base/share/classes/javax/security/auth/x500/X500PrivateCredential.java
index e3a7fdbd7dc..a4f37a36818 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/x500/X500PrivateCredential.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/x500/X500PrivateCredential.java
@@ -36,6 +36,7 @@ import javax.security.auth.Destroyable;
* This enables looking up the private credentials for an X.500 principal
* in a subject.
*
+ * @since 1.4
*/
public final class X500PrivateCredential implements Destroyable {
private X509Certificate cert;
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java
index 6211692d5c9..b1a90285d10 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Clipboard.java
@@ -48,6 +48,7 @@ import java.io.IOException;
*
* @author Amy Fowler
* @author Alexander Gerasimov
+ * @since 1.1
*/
public class Clipboard {
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java
index 4c68a3b5624..bc5e239be2d 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/ClipboardOwner.java
@@ -39,6 +39,7 @@ package java.awt.datatransfer;
* @see java.awt.datatransfer.Clipboard
*
* @author Amy Fowler
+ * @since 1.1
*/
public interface ClipboardOwner {
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java
index 7cc256e9e6d..701957ed795 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java
@@ -112,6 +112,7 @@ import java.util.Objects;
* @author Blake Sullivan
* @author Laurence P. G. Cable
* @author Jeff Dunn
+ * @since 1.1
*/
public class DataFlavor implements Externalizable, Cloneable {
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java
index aecf3f40f52..03817dbde74 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/StringSelection.java
@@ -39,6 +39,7 @@ import java.io.*;
* and all equivalent flavors is deprecated. No other
* DataFlavors are supported.
*
+ * @since 1.1
* @see java.awt.datatransfer.DataFlavor#stringFlavor
* @see java.awt.datatransfer.DataFlavor#plainTextFlavor
*/
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java
index 3ba437748ab..fdb947ab05c 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/Transferable.java
@@ -37,6 +37,7 @@ import java.io.IOException;
* a section in The Java Tutorial, for more information.
*
* @author Amy Fowler
+ * @since 1.1
*/
public interface Transferable {
diff --git a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java
index b3d9f17d21c..11ecbd1ab5d 100644
--- a/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java
+++ b/jdk/src/java.datatransfer/share/classes/java/awt/datatransfer/UnsupportedFlavorException.java
@@ -30,6 +30,7 @@ package java.awt.datatransfer;
* @see Transferable#getTransferData
*
* @author Amy Fowler
+ * @since 1.1
*/
public class UnsupportedFlavorException extends Exception {