提交 c2a5f680 编写于 作者: J juh

8017325: Cleanup of the javadoc <code> tag in java.security.cert

Summary: Convert javadoc <code>...</code> and <tt>...</tt> tags to {@code ...}
Reviewed-by: darcy
上级 2732b87f
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -57,13 +57,13 @@ public class CRLException extends GeneralSecurityException { ...@@ -57,13 +57,13 @@ public class CRLException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CRLException</code> with the specified * Creates a {@code CRLException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -72,13 +72,13 @@ public class CRLException extends GeneralSecurityException { ...@@ -72,13 +72,13 @@ public class CRLException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CRLException</code> with the specified cause * Creates a {@code CRLException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,9 +26,9 @@ ...@@ -26,9 +26,9 @@
package java.security.cert; package java.security.cert;
/** /**
* A selector that defines a set of criteria for selecting <code>CRL</code>s. * A selector that defines a set of criteria for selecting {@code CRL}s.
* Classes that implement this interface are often used to specify * Classes that implement this interface are often used to specify
* which <code>CRL</code>s should be retrieved from a <code>CertStore</code>. * which {@code CRL}s should be retrieved from a {@code CertStore}.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
...@@ -48,19 +48,19 @@ package java.security.cert; ...@@ -48,19 +48,19 @@ package java.security.cert;
public interface CRLSelector extends Cloneable { public interface CRLSelector extends Cloneable {
/** /**
* Decides whether a <code>CRL</code> should be selected. * Decides whether a {@code CRL} should be selected.
* *
* @param crl the <code>CRL</code> to be checked * @param crl the {@code CRL} to be checked
* @return <code>true</code> if the <code>CRL</code> should be selected, * @return {@code true} if the {@code CRL} should be selected,
* <code>false</code> otherwise * {@code false} otherwise
*/ */
boolean match(CRL crl); boolean match(CRL crl);
/** /**
* Makes a copy of this <code>CRLSelector</code>. Changes to the * Makes a copy of this {@code CRLSelector}. Changes to the
* copy will not affect the original and vice versa. * copy will not affect the original and vice versa.
* *
* @return a copy of this <code>CRLSelector</code> * @return a copy of this {@code CRLSelector}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -36,59 +36,59 @@ import java.util.List; ...@@ -36,59 +36,59 @@ import java.util.List;
* An immutable sequence of certificates (a certification path). * An immutable sequence of certificates (a certification path).
* <p> * <p>
* This is an abstract class that defines the methods common to all * This is an abstract class that defines the methods common to all
* <code>CertPath</code>s. Subclasses can handle different kinds of * {@code CertPath}s. Subclasses can handle different kinds of
* certificates (X.509, PGP, etc.). * certificates (X.509, PGP, etc.).
* <p> * <p>
* All <code>CertPath</code> objects have a type, a list of * All {@code CertPath} objects have a type, a list of
* <code>Certificate</code>s, and one or more supported encodings. Because the * {@code Certificate}s, and one or more supported encodings. Because the
* <code>CertPath</code> class is immutable, a <code>CertPath</code> cannot * {@code CertPath} class is immutable, a {@code CertPath} cannot
* change in any externally visible way after being constructed. This * change in any externally visible way after being constructed. This
* stipulation applies to all public fields and methods of this class and any * stipulation applies to all public fields and methods of this class and any
* added or overridden by subclasses. * added or overridden by subclasses.
* <p> * <p>
* The type is a <code>String</code> that identifies the type of * The type is a {@code String} that identifies the type of
* <code>Certificate</code>s in the certification path. For each * {@code Certificate}s in the certification path. For each
* certificate <code>cert</code> in a certification path <code>certPath</code>, * certificate {@code cert} in a certification path {@code certPath},
* <code>cert.getType().equals(certPath.getType())</code> must be * {@code cert.getType().equals(certPath.getType())} must be
* <code>true</code>. * {@code true}.
* <p> * <p>
* The list of <code>Certificate</code>s is an ordered <code>List</code> of * The list of {@code Certificate}s is an ordered {@code List} of
* zero or more <code>Certificate</code>s. This <code>List</code> and all * zero or more {@code Certificate}s. This {@code List} and all
* of the <code>Certificate</code>s contained in it must be immutable. * of the {@code Certificate}s contained in it must be immutable.
* <p> * <p>
* Each <code>CertPath</code> object must support one or more encodings * Each {@code CertPath} object must support one or more encodings
* so that the object can be translated into a byte array for storage or * so that the object can be translated into a byte array for storage or
* transmission to other parties. Preferably, these encodings should be * transmission to other parties. Preferably, these encodings should be
* well-documented standards (such as PKCS#7). One of the encodings supported * well-documented standards (such as PKCS#7). One of the encodings supported
* by a <code>CertPath</code> is considered the default encoding. This * by a {@code CertPath} is considered the default encoding. This
* encoding is used if no encoding is explicitly requested (for the * encoding is used if no encoding is explicitly requested (for the
* {@link #getEncoded() getEncoded()} method, for instance). * {@link #getEncoded() getEncoded()} method, for instance).
* <p> * <p>
* All <code>CertPath</code> objects are also <code>Serializable</code>. * All {@code CertPath} objects are also {@code Serializable}.
* <code>CertPath</code> objects are resolved into an alternate * {@code CertPath} objects are resolved into an alternate
* {@link CertPathRep CertPathRep} object during serialization. This allows * {@link CertPathRep CertPathRep} object during serialization. This allows
* a <code>CertPath</code> object to be serialized into an equivalent * a {@code CertPath} object to be serialized into an equivalent
* representation regardless of its underlying implementation. * representation regardless of its underlying implementation.
* <p> * <p>
* <code>CertPath</code> objects can be created with a * {@code CertPath} objects can be created with a
* <code>CertificateFactory</code> or they can be returned by other classes, * {@code CertificateFactory} or they can be returned by other classes,
* such as a <code>CertPathBuilder</code>. * such as a {@code CertPathBuilder}.
* <p> * <p>
* By convention, X.509 <code>CertPath</code>s (consisting of * By convention, X.509 {@code CertPath}s (consisting of
* <code>X509Certificate</code>s), are ordered starting with the target * {@code X509Certificate}s), are ordered starting with the target
* certificate and ending with a certificate issued by the trust anchor. That * certificate and ending with a certificate issued by the trust anchor. That
* is, the issuer of one certificate is the subject of the following one. The * is, the issuer of one certificate is the subject of the following one. The
* certificate representing the {@link TrustAnchor TrustAnchor} should not be * certificate representing the {@link TrustAnchor TrustAnchor} should not be
* included in the certification path. Unvalidated X.509 <code>CertPath</code>s * included in the certification path. Unvalidated X.509 {@code CertPath}s
* may not follow these conventions. PKIX <code>CertPathValidator</code>s will * may not follow these conventions. PKIX {@code CertPathValidator}s will
* detect any departure from these conventions that cause the certification * detect any departure from these conventions that cause the certification
* path to be invalid and throw a <code>CertPathValidatorException</code>. * path to be invalid and throw a {@code CertPathValidatorException}.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>CertPath</code> encodings: * following standard {@code CertPath} encodings:
* <ul> * <ul>
* <li><tt>PKCS7</tt></li> * <li>{@code PKCS7}</li>
* <li><tt>PkiPath</tt></li> * <li>{@code PkiPath}</li>
* </ul> * </ul>
* These encodings are described in the <a href= * These encodings are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
...@@ -99,17 +99,17 @@ import java.util.List; ...@@ -99,17 +99,17 @@ import java.util.List;
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* All <code>CertPath</code> objects must be thread-safe. That is, multiple * All {@code CertPath} objects must be thread-safe. That is, multiple
* threads may concurrently invoke the methods defined in this class on a * threads may concurrently invoke the methods defined in this class on a
* single <code>CertPath</code> object (or more than one) with no * single {@code CertPath} object (or more than one) with no
* ill effects. This is also true for the <code>List</code> returned by * ill effects. This is also true for the {@code List} returned by
* <code>CertPath.getCertificates</code>. * {@code CertPath.getCertificates}.
* <p> * <p>
* Requiring <code>CertPath</code> objects to be immutable and thread-safe * Requiring {@code CertPath} objects to be immutable and thread-safe
* allows them to be passed around to various pieces of code without worrying * allows them to be passed around to various pieces of code without worrying
* about coordinating access. Providing this thread-safety is * about coordinating access. Providing this thread-safety is
* generally not difficult, since the <code>CertPath</code> and * generally not difficult, since the {@code CertPath} and
* <code>List</code> objects in question are immutable. * {@code List} objects in question are immutable.
* *
* @see CertificateFactory * @see CertificateFactory
* @see CertPathBuilder * @see CertPathBuilder
...@@ -124,25 +124,25 @@ public abstract class CertPath implements Serializable { ...@@ -124,25 +124,25 @@ public abstract class CertPath implements Serializable {
private String type; // the type of certificates in this chain private String type; // the type of certificates in this chain
/** /**
* Creates a <code>CertPath</code> of the specified type. * Creates a {@code CertPath} of the specified type.
* <p> * <p>
* This constructor is protected because most users should use a * This constructor is protected because most users should use a
* <code>CertificateFactory</code> to create <code>CertPath</code>s. * {@code CertificateFactory} to create {@code CertPath}s.
* *
* @param type the standard name of the type of * @param type the standard name of the type of
* <code>Certificate</code>s in this path * {@code Certificate}s in this path
*/ */
protected CertPath(String type) { protected CertPath(String type) {
this.type = type; this.type = type;
} }
/** /**
* Returns the type of <code>Certificate</code>s in this certification * Returns the type of {@code Certificate}s in this certification
* path. This is the same string that would be returned by * path. This is the same string that would be returned by
* {@link java.security.cert.Certificate#getType() cert.getType()} * {@link java.security.cert.Certificate#getType() cert.getType()}
* for all <code>Certificate</code>s in the certification path. * for all {@code Certificate}s in the certification path.
* *
* @return the type of <code>Certificate</code>s in this certification * @return the type of {@code Certificate}s in this certification
* path (never null) * path (never null)
*/ */
public String getType() { public String getType() {
...@@ -152,21 +152,21 @@ public abstract class CertPath implements Serializable { ...@@ -152,21 +152,21 @@ public abstract class CertPath implements Serializable {
/** /**
* Returns an iteration of the encodings supported by this certification * Returns an iteration of the encodings supported by this certification
* path, with the default encoding first. Attempts to modify the returned * path, with the default encoding first. Attempts to modify the returned
* <code>Iterator</code> via its <code>remove</code> method result in an * {@code Iterator} via its {@code remove} method result in an
* <code>UnsupportedOperationException</code>. * {@code UnsupportedOperationException}.
* *
* @return an <code>Iterator</code> over the names of the supported * @return an {@code Iterator} over the names of the supported
* encodings (as Strings) * encodings (as Strings)
*/ */
public abstract Iterator<String> getEncodings(); public abstract Iterator<String> getEncodings();
/** /**
* Compares this certification path for equality with the specified * Compares this certification path for equality with the specified
* object. Two <code>CertPath</code>s are equal if and only if their * object. Two {@code CertPath}s are equal if and only if their
* types are equal and their certificate <code>List</code>s (and by * types are equal and their certificate {@code List}s (and by
* implication the <code>Certificate</code>s in those <code>List</code>s) * implication the {@code Certificate}s in those {@code List}s)
* are equal. A <code>CertPath</code> is never equal to an object that is * are equal. A {@code CertPath} is never equal to an object that is
* not a <code>CertPath</code>. * not a {@code CertPath}.
* <p> * <p>
* This algorithm is implemented by this method. If it is overridden, * This algorithm is implemented by this method. If it is overridden,
* the behavior specified here must be maintained. * the behavior specified here must be maintained.
...@@ -195,14 +195,14 @@ public abstract class CertPath implements Serializable { ...@@ -195,14 +195,14 @@ public abstract class CertPath implements Serializable {
* Returns the hashcode for this certification path. The hash code of * Returns the hashcode for this certification path. The hash code of
* a certification path is defined to be the result of the following * a certification path is defined to be the result of the following
* calculation: * calculation:
* <pre><code> * <pre>{@code
* hashCode = path.getType().hashCode(); * hashCode = path.getType().hashCode();
* hashCode = 31*hashCode + path.getCertificates().hashCode(); * hashCode = 31*hashCode + path.getCertificates().hashCode();
* </code></pre> * }</pre>
* This ensures that <code>path1.equals(path2)</code> implies that * This ensures that {@code path1.equals(path2)} implies that
* <code>path1.hashCode()==path2.hashCode()</code> for any two certification * {@code path1.hashCode()==path2.hashCode()} for any two certification
* paths, <code>path1</code> and <code>path2</code>, as required by the * paths, {@code path1} and {@code path2}, as required by the
* general contract of <code>Object.hashCode</code>. * general contract of {@code Object.hashCode}.
* *
* @return the hashcode value for this certification path * @return the hashcode value for this certification path
*/ */
...@@ -214,8 +214,8 @@ public abstract class CertPath implements Serializable { ...@@ -214,8 +214,8 @@ public abstract class CertPath implements Serializable {
/** /**
* Returns a string representation of this certification path. * Returns a string representation of this certification path.
* This calls the <code>toString</code> method on each of the * This calls the {@code toString} method on each of the
* <code>Certificate</code>s in the path. * {@code Certificate}s in the path.
* *
* @return a string representation of this certification path * @return a string representation of this certification path
*/ */
...@@ -266,20 +266,20 @@ public abstract class CertPath implements Serializable { ...@@ -266,20 +266,20 @@ public abstract class CertPath implements Serializable {
/** /**
* Returns the list of certificates in this certification path. * Returns the list of certificates in this certification path.
* The <code>List</code> returned must be immutable and thread-safe. * The {@code List} returned must be immutable and thread-safe.
* *
* @return an immutable <code>List</code> of <code>Certificate</code>s * @return an immutable {@code List} of {@code Certificate}s
* (may be empty, but not null) * (may be empty, but not null)
*/ */
public abstract List<? extends Certificate> getCertificates(); public abstract List<? extends Certificate> getCertificates();
/** /**
* Replaces the <code>CertPath</code> to be serialized with a * Replaces the {@code CertPath} to be serialized with a
* <code>CertPathRep</code> object. * {@code CertPathRep} object.
* *
* @return the <code>CertPathRep</code> to be serialized * @return the {@code CertPathRep} to be serialized
* *
* @throws ObjectStreamException if a <code>CertPathRep</code> object * @throws ObjectStreamException if a {@code CertPathRep} object
* representing this certification path could not be created * representing this certification path could not be created
*/ */
protected Object writeReplace() throws ObjectStreamException { protected Object writeReplace() throws ObjectStreamException {
...@@ -295,7 +295,7 @@ public abstract class CertPath implements Serializable { ...@@ -295,7 +295,7 @@ public abstract class CertPath implements Serializable {
} }
/** /**
* Alternate <code>CertPath</code> class for serialization. * Alternate {@code CertPath} class for serialization.
* @since 1.4 * @since 1.4
*/ */
protected static class CertPathRep implements Serializable { protected static class CertPathRep implements Serializable {
...@@ -308,10 +308,10 @@ public abstract class CertPath implements Serializable { ...@@ -308,10 +308,10 @@ public abstract class CertPath implements Serializable {
private byte[] data; private byte[] data;
/** /**
* Creates a <code>CertPathRep</code> with the specified * Creates a {@code CertPathRep} with the specified
* type and encoded form of a certification path. * type and encoded form of a certification path.
* *
* @param type the standard name of a <code>CertPath</code> type * @param type the standard name of a {@code CertPath} type
* @param data the encoded form of the certification path * @param data the encoded form of the certification path
*/ */
protected CertPathRep(String type, byte[] data) { protected CertPathRep(String type, byte[] data) {
...@@ -320,11 +320,11 @@ public abstract class CertPath implements Serializable { ...@@ -320,11 +320,11 @@ public abstract class CertPath implements Serializable {
} }
/** /**
* Returns a <code>CertPath</code> constructed from the type and data. * Returns a {@code CertPath} constructed from the type and data.
* *
* @return the resolved <code>CertPath</code> object * @return the resolved {@code CertPath} object
* *
* @throws ObjectStreamException if a <code>CertPath</code> could not * @throws ObjectStreamException if a {@code CertPath} could not
* be constructed * be constructed
*/ */
protected Object readResolve() throws ObjectStreamException { protected Object readResolve() throws ObjectStreamException {
......
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -41,16 +41,16 @@ import sun.security.jca.GetInstance.Instance; ...@@ -41,16 +41,16 @@ import sun.security.jca.GetInstance.Instance;
* A class for building certification paths (also known as certificate chains). * A class for building certification paths (also known as certificate chains).
* <p> * <p>
* This class uses a provider-based architecture. * This class uses a provider-based architecture.
* To create a <code>CertPathBuilder</code>, call * To create a {@code CertPathBuilder}, call
* one of the static <code>getInstance</code> methods, passing in the * one of the static {@code getInstance} methods, passing in the
* algorithm name of the <code>CertPathBuilder</code> desired and optionally * algorithm name of the {@code CertPathBuilder} desired and optionally
* the name of the provider desired. * the name of the provider desired.
* *
* <p>Once a <code>CertPathBuilder</code> object has been created, certification * <p>Once a {@code CertPathBuilder} object has been created, certification
* paths can be constructed by calling the {@link #build build} method and * paths can be constructed by calling the {@link #build build} method and
* passing it an algorithm-specific set of parameters. If successful, the * passing it an algorithm-specific set of parameters. If successful, the
* result (including the <code>CertPath</code> that was built) is returned * result (including the {@code CertPath} that was built) is returned
* in an object that implements the <code>CertPathBuilderResult</code> * in an object that implements the {@code CertPathBuilderResult}
* interface. * interface.
* *
* <p>The {@link #getRevocationChecker} method allows an application to specify * <p>The {@link #getRevocationChecker} method allows an application to specify
...@@ -67,9 +67,9 @@ import sun.security.jca.GetInstance.Instance; ...@@ -67,9 +67,9 @@ import sun.security.jca.GetInstance.Instance;
* </pre> * </pre>
* *
* <p>Every implementation of the Java platform is required to support the * <p>Every implementation of the Java platform is required to support the
* following standard <code>CertPathBuilder</code> algorithm: * following standard {@code CertPathBuilder} algorithm:
* <ul> * <ul>
* <li><tt>PKIX</tt></li> * <li>{@code PKIX}</li>
* </ul> * </ul>
* This algorithm is described in the <a href= * This algorithm is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
...@@ -87,9 +87,9 @@ import sun.security.jca.GetInstance.Instance; ...@@ -87,9 +87,9 @@ import sun.security.jca.GetInstance.Instance;
* <p> * <p>
* However, this is not true for the non-static methods defined by this class. * However, this is not true for the non-static methods defined by this class.
* Unless otherwise documented by a specific provider, threads that need to * Unless otherwise documented by a specific provider, threads that need to
* access a single <code>CertPathBuilder</code> instance concurrently should * access a single {@code CertPathBuilder} instance concurrently should
* synchronize amongst themselves and provide the necessary locking. Multiple * synchronize amongst themselves and provide the necessary locking. Multiple
* threads each manipulating a different <code>CertPathBuilder</code> instance * threads each manipulating a different {@code CertPathBuilder} instance
* need not synchronize. * need not synchronize.
* *
* @see CertPath * @see CertPath
...@@ -114,7 +114,7 @@ public class CertPathBuilder { ...@@ -114,7 +114,7 @@ public class CertPathBuilder {
private final String algorithm; private final String algorithm;
/** /**
* Creates a <code>CertPathBuilder</code> object of the given algorithm, * Creates a {@code CertPathBuilder} object of the given algorithm,
* and encapsulates the given provider implementation (SPI object) in it. * and encapsulates the given provider implementation (SPI object) in it.
* *
* @param builderSpi the provider implementation * @param builderSpi the provider implementation
...@@ -130,7 +130,7 @@ public class CertPathBuilder { ...@@ -130,7 +130,7 @@ public class CertPathBuilder {
} }
/** /**
* Returns a <code>CertPathBuilder</code> object that implements the * Returns a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> This method traverses the list of registered security Providers, * <p> This method traverses the list of registered security Providers,
...@@ -142,13 +142,13 @@ public class CertPathBuilder { ...@@ -142,13 +142,13 @@ public class CertPathBuilder {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* @param algorithm the name of the requested <code>CertPathBuilder</code> * @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href= * algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard algorithm names. * for information about standard algorithm names.
* *
* @return a <code>CertPathBuilder</code> object that implements the * @return a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* @throws NoSuchAlgorithmException if no Provider supports a * @throws NoSuchAlgorithmException if no Provider supports a
...@@ -166,7 +166,7 @@ public class CertPathBuilder { ...@@ -166,7 +166,7 @@ public class CertPathBuilder {
} }
/** /**
* Returns a <code>CertPathBuilder</code> object that implements the * Returns a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> A new CertPathBuilder object encapsulating the * <p> A new CertPathBuilder object encapsulating the
...@@ -177,7 +177,7 @@ public class CertPathBuilder { ...@@ -177,7 +177,7 @@ public class CertPathBuilder {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* @param algorithm the name of the requested <code>CertPathBuilder</code> * @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href= * algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
...@@ -185,7 +185,7 @@ public class CertPathBuilder { ...@@ -185,7 +185,7 @@ public class CertPathBuilder {
* *
* @param provider the name of the provider. * @param provider the name of the provider.
* *
* @return a <code>CertPathBuilder</code> object that implements the * @return a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* @throws NoSuchAlgorithmException if a CertPathBuilderSpi * @throws NoSuchAlgorithmException if a CertPathBuilderSpi
...@@ -195,7 +195,7 @@ public class CertPathBuilder { ...@@ -195,7 +195,7 @@ public class CertPathBuilder {
* @throws NoSuchProviderException if the specified provider is not * @throws NoSuchProviderException if the specified provider is not
* registered in the security provider list. * registered in the security provider list.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null or empty. * null or empty.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -209,7 +209,7 @@ public class CertPathBuilder { ...@@ -209,7 +209,7 @@ public class CertPathBuilder {
} }
/** /**
* Returns a <code>CertPathBuilder</code> object that implements the * Returns a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> A new CertPathBuilder object encapsulating the * <p> A new CertPathBuilder object encapsulating the
...@@ -217,7 +217,7 @@ public class CertPathBuilder { ...@@ -217,7 +217,7 @@ public class CertPathBuilder {
* object is returned. Note that the specified Provider object * object is returned. Note that the specified Provider object
* does not have to be registered in the provider list. * does not have to be registered in the provider list.
* *
* @param algorithm the name of the requested <code>CertPathBuilder</code> * @param algorithm the name of the requested {@code CertPathBuilder}
* algorithm. See the CertPathBuilder section in the <a href= * algorithm. See the CertPathBuilder section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathBuilder">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
...@@ -225,14 +225,14 @@ public class CertPathBuilder { ...@@ -225,14 +225,14 @@ public class CertPathBuilder {
* *
* @param provider the provider. * @param provider the provider.
* *
* @return a <code>CertPathBuilder</code> object that implements the * @return a {@code CertPathBuilder} object that implements the
* specified algorithm. * specified algorithm.
* *
* @exception NoSuchAlgorithmException if a CertPathBuilderSpi * @exception NoSuchAlgorithmException if a CertPathBuilderSpi
* implementation for the specified algorithm is not available * implementation for the specified algorithm is not available
* from the specified Provider object. * from the specified Provider object.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null. * null.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -246,18 +246,18 @@ public class CertPathBuilder { ...@@ -246,18 +246,18 @@ public class CertPathBuilder {
} }
/** /**
* Returns the provider of this <code>CertPathBuilder</code>. * Returns the provider of this {@code CertPathBuilder}.
* *
* @return the provider of this <code>CertPathBuilder</code> * @return the provider of this {@code CertPathBuilder}
*/ */
public final Provider getProvider() { public final Provider getProvider() {
return this.provider; return this.provider;
} }
/** /**
* Returns the name of the algorithm of this <code>CertPathBuilder</code>. * Returns the name of the algorithm of this {@code CertPathBuilder}.
* *
* @return the name of the algorithm of this <code>CertPathBuilder</code> * @return the name of the algorithm of this {@code CertPathBuilder}
*/ */
public final String getAlgorithm() { public final String getAlgorithm() {
return this.algorithm; return this.algorithm;
...@@ -272,7 +272,7 @@ public class CertPathBuilder { ...@@ -272,7 +272,7 @@ public class CertPathBuilder {
* @throws CertPathBuilderException if the builder is unable to construct * @throws CertPathBuilderException if the builder is unable to construct
* a certification path that satisfies the specified parameters * a certification path that satisfies the specified parameters
* @throws InvalidAlgorithmParameterException if the specified parameters * @throws InvalidAlgorithmParameterException if the specified parameters
* are inappropriate for this <code>CertPathBuilder</code> * are inappropriate for this {@code CertPathBuilder}
*/ */
public final CertPathBuilderResult build(CertPathParameters params) public final CertPathBuilderResult build(CertPathParameters params)
throws CertPathBuilderException, InvalidAlgorithmParameterException throws CertPathBuilderException, InvalidAlgorithmParameterException
......
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,9 +29,9 @@ import java.security.GeneralSecurityException; ...@@ -29,9 +29,9 @@ import java.security.GeneralSecurityException;
/** /**
* An exception indicating one of a variety of problems encountered when * An exception indicating one of a variety of problems encountered when
* building a certification path with a <code>CertPathBuilder</code>. * building a certification path with a {@code CertPathBuilder}.
* <p> * <p>
* A <code>CertPathBuilderException</code> provides support for wrapping * A {@code CertPathBuilderException} provides support for wrapping
* exceptions. The {@link #getCause getCause} method returns the throwable, * exceptions. The {@link #getCause getCause} method returns the throwable,
* if any, that caused this exception to be thrown. * if any, that caused this exception to be thrown.
* <p> * <p>
...@@ -53,7 +53,7 @@ public class CertPathBuilderException extends GeneralSecurityException { ...@@ -53,7 +53,7 @@ public class CertPathBuilderException extends GeneralSecurityException {
private static final long serialVersionUID = 5316471420178794402L; private static final long serialVersionUID = 5316471420178794402L;
/** /**
* Creates a <code>CertPathBuilderException</code> with <code>null</code> * Creates a {@code CertPathBuilderException} with {@code null}
* as its detail message. * as its detail message.
*/ */
public CertPathBuilderException() { public CertPathBuilderException() {
...@@ -61,8 +61,8 @@ public class CertPathBuilderException extends GeneralSecurityException { ...@@ -61,8 +61,8 @@ public class CertPathBuilderException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathBuilderException</code> with the given * Creates a {@code CertPathBuilderException} with the given
* detail message. The detail message is a <code>String</code> that * detail message. The detail message is a {@code String} that
* describes this particular exception in more detail. * describes this particular exception in more detail.
* *
* @param msg the detail message * @param msg the detail message
...@@ -72,16 +72,16 @@ public class CertPathBuilderException extends GeneralSecurityException { ...@@ -72,16 +72,16 @@ public class CertPathBuilderException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathBuilderException</code> that wraps the specified * Creates a {@code CertPathBuilderException} that wraps the specified
* throwable. This allows any exception to be converted into a * throwable. This allows any exception to be converted into a
* <code>CertPathBuilderException</code>, while retaining information * {@code CertPathBuilderException}, while retaining information
* about the wrapped exception, which may be useful for debugging. The * about the wrapped exception, which may be useful for debugging. The
* detail message is set to (<code>cause==null ? null : cause.toString() * detail message is set to ({@code cause==null ? null : cause.toString()})
* </code>) (which typically contains the class and detail message of * (which typically contains the class and detail message of
* cause). * cause).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertPathBuilderException(Throwable cause) { public CertPathBuilderException(Throwable cause) {
...@@ -89,12 +89,12 @@ public class CertPathBuilderException extends GeneralSecurityException { ...@@ -89,12 +89,12 @@ public class CertPathBuilderException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathBuilderException</code> with the specified * Creates a {@code CertPathBuilderException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param msg the detail message * @param msg the detail message
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertPathBuilderException(String msg, Throwable cause) { public CertPathBuilderException(String msg, Throwable cause) {
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,8 +30,8 @@ package java.security.cert; ...@@ -30,8 +30,8 @@ package java.security.cert;
* All results returned by the {@link CertPathBuilder#build * All results returned by the {@link CertPathBuilder#build
* CertPathBuilder.build} method must implement this interface. * CertPathBuilder.build} method must implement this interface.
* <p> * <p>
* At a minimum, a <code>CertPathBuilderResult</code> contains the * At a minimum, a {@code CertPathBuilderResult} contains the
* <code>CertPath</code> built by the <code>CertPathBuilder</code> instance. * {@code CertPath} built by the {@code CertPathBuilder} instance.
* Implementations of this interface may add methods to return implementation * Implementations of this interface may add methods to return implementation
* or algorithm specific information, such as debugging information or * or algorithm specific information, such as debugging information or
* certification path validation results. * certification path validation results.
...@@ -54,15 +54,15 @@ public interface CertPathBuilderResult extends Cloneable { ...@@ -54,15 +54,15 @@ public interface CertPathBuilderResult extends Cloneable {
/** /**
* Returns the built certification path. * Returns the built certification path.
* *
* @return the certification path (never <code>null</code>) * @return the certification path (never {@code null})
*/ */
CertPath getCertPath(); CertPath getCertPath();
/** /**
* Makes a copy of this <code>CertPathBuilderResult</code>. Changes to the * Makes a copy of this {@code CertPathBuilderResult}. Changes to the
* copy will not affect the original and vice versa. * copy will not affect the original and vice versa.
* *
* @return a copy of this <code>CertPathBuilderResult</code> * @return a copy of this {@code CertPathBuilderResult}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,23 +30,23 @@ import java.security.InvalidAlgorithmParameterException; ...@@ -30,23 +30,23 @@ import java.security.InvalidAlgorithmParameterException;
/** /**
* The <i>Service Provider Interface</i> (<b>SPI</b>) * The <i>Service Provider Interface</i> (<b>SPI</b>)
* for the {@link CertPathBuilder CertPathBuilder} class. All * for the {@link CertPathBuilder CertPathBuilder} class. All
* <code>CertPathBuilder</code> implementations must include a class (the * {@code CertPathBuilder} implementations must include a class (the
* SPI class) that extends this class (<code>CertPathBuilderSpi</code>) and * SPI class) that extends this class ({@code CertPathBuilderSpi}) and
* implements all of its methods. In general, instances of this class should * implements all of its methods. In general, instances of this class should
* only be accessed through the <code>CertPathBuilder</code> class. For * only be accessed through the {@code CertPathBuilder} class. For
* details, see the Java Cryptography Architecture. * details, see the Java Cryptography Architecture.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* Instances of this class need not be protected against concurrent * Instances of this class need not be protected against concurrent
* access from multiple threads. Threads that need to access a single * access from multiple threads. Threads that need to access a single
* <code>CertPathBuilderSpi</code> instance concurrently should synchronize * {@code CertPathBuilderSpi} instance concurrently should synchronize
* amongst themselves and provide the necessary locking before calling the * amongst themselves and provide the necessary locking before calling the
* wrapping <code>CertPathBuilder</code> object. * wrapping {@code CertPathBuilder} object.
* <p> * <p>
* However, implementations of <code>CertPathBuilderSpi</code> may still * However, implementations of {@code CertPathBuilderSpi} may still
* encounter concurrency issues, since multiple threads each * encounter concurrency issues, since multiple threads each
* manipulating a different <code>CertPathBuilderSpi</code> instance need not * manipulating a different {@code CertPathBuilderSpi} instance need not
* synchronize. * synchronize.
* *
* @since 1.4 * @since 1.4
...@@ -68,7 +68,7 @@ public abstract class CertPathBuilderSpi { ...@@ -68,7 +68,7 @@ public abstract class CertPathBuilderSpi {
* @throws CertPathBuilderException if the builder is unable to construct * @throws CertPathBuilderException if the builder is unable to construct
* a certification path that satisfies the specified parameters * a certification path that satisfies the specified parameters
* @throws InvalidAlgorithmParameterException if the specified parameters * @throws InvalidAlgorithmParameterException if the specified parameters
* are inappropriate for this <code>CertPathBuilder</code> * are inappropriate for this {@code CertPathBuilder}
*/ */
public abstract CertPathBuilderResult engineBuild(CertPathParameters params) public abstract CertPathBuilderResult engineBuild(CertPathParameters params)
throws CertPathBuilderException, InvalidAlgorithmParameterException; throws CertPathBuilderException, InvalidAlgorithmParameterException;
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -28,8 +28,8 @@ package java.security.cert; ...@@ -28,8 +28,8 @@ package java.security.cert;
/** /**
* A specification of certification path algorithm parameters. * A specification of certification path algorithm parameters.
* The purpose of this interface is to group (and provide type safety for) * The purpose of this interface is to group (and provide type safety for)
* all <code>CertPath</code> parameter specifications. All * all {@code CertPath} parameter specifications. All
* <code>CertPath</code> parameter specifications must implement this * {@code CertPath} parameter specifications must implement this
* interface. * interface.
* *
* @author Yassir Elley * @author Yassir Elley
...@@ -40,10 +40,10 @@ package java.security.cert; ...@@ -40,10 +40,10 @@ package java.security.cert;
public interface CertPathParameters extends Cloneable { public interface CertPathParameters extends Cloneable {
/** /**
* Makes a copy of this <code>CertPathParameters</code>. Changes to the * Makes a copy of this {@code CertPathParameters}. Changes to the
* copy will not affect the original and vice versa. * copy will not affect the original and vice versa.
* *
* @return a copy of this <code>CertPathParameters</code> * @return a copy of this {@code CertPathParameters}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -42,17 +42,17 @@ import sun.security.jca.GetInstance.Instance; ...@@ -42,17 +42,17 @@ import sun.security.jca.GetInstance.Instance;
* chains). * chains).
* <p> * <p>
* This class uses a provider-based architecture. * This class uses a provider-based architecture.
* To create a <code>CertPathValidator</code>, * To create a {@code CertPathValidator},
* call one of the static <code>getInstance</code> methods, passing in the * call one of the static {@code getInstance} methods, passing in the
* algorithm name of the <code>CertPathValidator</code> desired and * algorithm name of the {@code CertPathValidator} desired and
* optionally the name of the provider desired. * optionally the name of the provider desired.
* *
* <p>Once a <code>CertPathValidator</code> object has been created, it can * <p>Once a {@code CertPathValidator} object has been created, it can
* be used to validate certification paths by calling the {@link #validate * be used to validate certification paths by calling the {@link #validate
* validate} method and passing it the <code>CertPath</code> to be validated * validate} method and passing it the {@code CertPath} to be validated
* and an algorithm-specific set of parameters. If successful, the result is * and an algorithm-specific set of parameters. If successful, the result is
* returned in an object that implements the * returned in an object that implements the
* <code>CertPathValidatorResult</code> interface. * {@code CertPathValidatorResult} interface.
* *
* <p>The {@link #getRevocationChecker} method allows an application to specify * <p>The {@link #getRevocationChecker} method allows an application to specify
* additional algorithm-specific parameters and options used by the * additional algorithm-specific parameters and options used by the
...@@ -69,9 +69,9 @@ import sun.security.jca.GetInstance.Instance; ...@@ -69,9 +69,9 @@ import sun.security.jca.GetInstance.Instance;
* </pre> * </pre>
* *
* <p>Every implementation of the Java platform is required to support the * <p>Every implementation of the Java platform is required to support the
* following standard <code>CertPathValidator</code> algorithm: * following standard {@code CertPathValidator} algorithm:
* <ul> * <ul>
* <li><tt>PKIX</tt></li> * <li>{@code PKIX}</li>
* </ul> * </ul>
* This algorithm is described in the <a href= * This algorithm is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
...@@ -89,9 +89,9 @@ import sun.security.jca.GetInstance.Instance; ...@@ -89,9 +89,9 @@ import sun.security.jca.GetInstance.Instance;
* <p> * <p>
* However, this is not true for the non-static methods defined by this class. * However, this is not true for the non-static methods defined by this class.
* Unless otherwise documented by a specific provider, threads that need to * Unless otherwise documented by a specific provider, threads that need to
* access a single <code>CertPathValidator</code> instance concurrently should * access a single {@code CertPathValidator} instance concurrently should
* synchronize amongst themselves and provide the necessary locking. Multiple * synchronize amongst themselves and provide the necessary locking. Multiple
* threads each manipulating a different <code>CertPathValidator</code> * threads each manipulating a different {@code CertPathValidator}
* instance need not synchronize. * instance need not synchronize.
* *
* @see CertPath * @see CertPath
...@@ -115,7 +115,7 @@ public class CertPathValidator { ...@@ -115,7 +115,7 @@ public class CertPathValidator {
private final String algorithm; private final String algorithm;
/** /**
* Creates a <code>CertPathValidator</code> object of the given algorithm, * Creates a {@code CertPathValidator} object of the given algorithm,
* and encapsulates the given provider implementation (SPI object) in it. * and encapsulates the given provider implementation (SPI object) in it.
* *
* @param validatorSpi the provider implementation * @param validatorSpi the provider implementation
...@@ -131,7 +131,7 @@ public class CertPathValidator { ...@@ -131,7 +131,7 @@ public class CertPathValidator {
} }
/** /**
* Returns a <code>CertPathValidator</code> object that implements the * Returns a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> This method traverses the list of registered security Providers, * <p> This method traverses the list of registered security Providers,
...@@ -143,13 +143,13 @@ public class CertPathValidator { ...@@ -143,13 +143,13 @@ public class CertPathValidator {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* @param algorithm the name of the requested <code>CertPathValidator</code> * @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href= * algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard algorithm names. * for information about standard algorithm names.
* *
* @return a <code>CertPathValidator</code> object that implements the * @return a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* @exception NoSuchAlgorithmException if no Provider supports a * @exception NoSuchAlgorithmException if no Provider supports a
...@@ -167,7 +167,7 @@ public class CertPathValidator { ...@@ -167,7 +167,7 @@ public class CertPathValidator {
} }
/** /**
* Returns a <code>CertPathValidator</code> object that implements the * Returns a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> A new CertPathValidator object encapsulating the * <p> A new CertPathValidator object encapsulating the
...@@ -178,7 +178,7 @@ public class CertPathValidator { ...@@ -178,7 +178,7 @@ public class CertPathValidator {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* @param algorithm the name of the requested <code>CertPathValidator</code> * @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href= * algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
...@@ -186,7 +186,7 @@ public class CertPathValidator { ...@@ -186,7 +186,7 @@ public class CertPathValidator {
* *
* @param provider the name of the provider. * @param provider the name of the provider.
* *
* @return a <code>CertPathValidator</code> object that implements the * @return a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* @exception NoSuchAlgorithmException if a CertPathValidatorSpi * @exception NoSuchAlgorithmException if a CertPathValidatorSpi
...@@ -196,7 +196,7 @@ public class CertPathValidator { ...@@ -196,7 +196,7 @@ public class CertPathValidator {
* @exception NoSuchProviderException if the specified provider is not * @exception NoSuchProviderException if the specified provider is not
* registered in the security provider list. * registered in the security provider list.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null or empty. * null or empty.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -211,7 +211,7 @@ public class CertPathValidator { ...@@ -211,7 +211,7 @@ public class CertPathValidator {
} }
/** /**
* Returns a <code>CertPathValidator</code> object that implements the * Returns a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* <p> A new CertPathValidator object encapsulating the * <p> A new CertPathValidator object encapsulating the
...@@ -219,7 +219,7 @@ public class CertPathValidator { ...@@ -219,7 +219,7 @@ public class CertPathValidator {
* object is returned. Note that the specified Provider object * object is returned. Note that the specified Provider object
* does not have to be registered in the provider list. * does not have to be registered in the provider list.
* *
* @param algorithm the name of the requested <code>CertPathValidator</code> * @param algorithm the name of the requested {@code CertPathValidator}
* algorithm. See the CertPathValidator section in the <a href= * algorithm. See the CertPathValidator section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathValidator">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
...@@ -227,14 +227,14 @@ public class CertPathValidator { ...@@ -227,14 +227,14 @@ public class CertPathValidator {
* *
* @param provider the provider. * @param provider the provider.
* *
* @return a <code>CertPathValidator</code> object that implements the * @return a {@code CertPathValidator} object that implements the
* specified algorithm. * specified algorithm.
* *
* @exception NoSuchAlgorithmException if a CertPathValidatorSpi * @exception NoSuchAlgorithmException if a CertPathValidatorSpi
* implementation for the specified algorithm is not available * implementation for the specified algorithm is not available
* from the specified Provider object. * from the specified Provider object.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null. * null.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -248,19 +248,19 @@ public class CertPathValidator { ...@@ -248,19 +248,19 @@ public class CertPathValidator {
} }
/** /**
* Returns the <code>Provider</code> of this * Returns the {@code Provider} of this
* <code>CertPathValidator</code>. * {@code CertPathValidator}.
* *
* @return the <code>Provider</code> of this <code>CertPathValidator</code> * @return the {@code Provider} of this {@code CertPathValidator}
*/ */
public final Provider getProvider() { public final Provider getProvider() {
return this.provider; return this.provider;
} }
/** /**
* Returns the algorithm name of this <code>CertPathValidator</code>. * Returns the algorithm name of this {@code CertPathValidator}.
* *
* @return the algorithm name of this <code>CertPathValidator</code> * @return the algorithm name of this {@code CertPathValidator}
*/ */
public final String getAlgorithm() { public final String getAlgorithm() {
return this.algorithm; return this.algorithm;
...@@ -270,20 +270,20 @@ public class CertPathValidator { ...@@ -270,20 +270,20 @@ public class CertPathValidator {
* Validates the specified certification path using the specified * Validates the specified certification path using the specified
* algorithm parameter set. * algorithm parameter set.
* <p> * <p>
* The <code>CertPath</code> specified must be of a type that is * The {@code CertPath} specified must be of a type that is
* supported by the validation algorithm, otherwise an * supported by the validation algorithm, otherwise an
* <code>InvalidAlgorithmParameterException</code> will be thrown. For * {@code InvalidAlgorithmParameterException} will be thrown. For
* example, a <code>CertPathValidator</code> that implements the PKIX * example, a {@code CertPathValidator} that implements the PKIX
* algorithm validates <code>CertPath</code> objects of type X.509. * algorithm validates {@code CertPath} objects of type X.509.
* *
* @param certPath the <code>CertPath</code> to be validated * @param certPath the {@code CertPath} to be validated
* @param params the algorithm parameters * @param params the algorithm parameters
* @return the result of the validation algorithm * @return the result of the validation algorithm
* @exception CertPathValidatorException if the <code>CertPath</code> * @exception CertPathValidatorException if the {@code CertPath}
* does not validate * does not validate
* @exception InvalidAlgorithmParameterException if the specified * @exception InvalidAlgorithmParameterException if the specified
* parameters or the type of the specified <code>CertPath</code> are * parameters or the type of the specified {@code CertPath} are
* inappropriate for this <code>CertPathValidator</code> * inappropriate for this {@code CertPathValidator}
*/ */
public final CertPathValidatorResult validate(CertPath certPath, public final CertPathValidatorResult validate(CertPath certPath,
CertPathParameters params) CertPathParameters params)
......
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -34,11 +34,11 @@ import java.security.GeneralSecurityException; ...@@ -34,11 +34,11 @@ import java.security.GeneralSecurityException;
* An exception indicating one of a variety of problems encountered when * An exception indicating one of a variety of problems encountered when
* validating a certification path. * validating a certification path.
* <p> * <p>
* A <code>CertPathValidatorException</code> provides support for wrapping * A {@code CertPathValidatorException} provides support for wrapping
* exceptions. The {@link #getCause getCause} method returns the throwable, * exceptions. The {@link #getCause getCause} method returns the throwable,
* if any, that caused this exception to be thrown. * if any, that caused this exception to be thrown.
* <p> * <p>
* A <code>CertPathValidatorException</code> may also include the * A {@code CertPathValidatorException} may also include the
* certification path that was being validated when the exception was thrown, * certification path that was being validated when the exception was thrown,
* the index of the certificate in the certification path that caused the * the index of the certificate in the certification path that caused the
* exception to be thrown, and the reason that caused the failure. Use the * exception to be thrown, and the reason that caused the failure. Use the
...@@ -70,7 +70,7 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -70,7 +70,7 @@ public class CertPathValidatorException extends GeneralSecurityException {
private int index = -1; private int index = -1;
/** /**
* @serial the <code>CertPath</code> that was being validated when * @serial the {@code CertPath} that was being validated when
* the exception was thrown * the exception was thrown
*/ */
private CertPath certPath; private CertPath certPath;
...@@ -81,7 +81,7 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -81,7 +81,7 @@ public class CertPathValidatorException extends GeneralSecurityException {
private Reason reason = BasicReason.UNSPECIFIED; private Reason reason = BasicReason.UNSPECIFIED;
/** /**
* Creates a <code>CertPathValidatorException</code> with * Creates a {@code CertPathValidatorException} with
* no detail message. * no detail message.
*/ */
public CertPathValidatorException() { public CertPathValidatorException() {
...@@ -89,8 +89,8 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -89,8 +89,8 @@ public class CertPathValidatorException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathValidatorException</code> with the given * Creates a {@code CertPathValidatorException} with the given
* detail message. A detail message is a <code>String</code> that * detail message. A detail message is a {@code String} that
* describes this particular exception. * describes this particular exception.
* *
* @param msg the detail message * @param msg the detail message
...@@ -100,16 +100,16 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -100,16 +100,16 @@ public class CertPathValidatorException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathValidatorException</code> that wraps the * Creates a {@code CertPathValidatorException} that wraps the
* specified throwable. This allows any exception to be converted into a * specified throwable. This allows any exception to be converted into a
* <code>CertPathValidatorException</code>, while retaining information * {@code CertPathValidatorException}, while retaining information
* about the wrapped exception, which may be useful for debugging. The * about the wrapped exception, which may be useful for debugging. The
* detail message is set to (<code>cause==null ? null : cause.toString() * detail message is set to ({@code cause==null ? null : cause.toString()})
* </code>) (which typically contains the class and detail message of * (which typically contains the class and detail message of
* cause). * cause).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertPathValidatorException(Throwable cause) { public CertPathValidatorException(Throwable cause) {
...@@ -117,12 +117,12 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -117,12 +117,12 @@ public class CertPathValidatorException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathValidatorException</code> with the specified * Creates a {@code CertPathValidatorException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param msg the detail message * @param msg the detail message
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertPathValidatorException(String msg, Throwable cause) { public CertPathValidatorException(String msg, Throwable cause) {
...@@ -130,21 +130,21 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -130,21 +130,21 @@ public class CertPathValidatorException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathValidatorException</code> with the specified * Creates a {@code CertPathValidatorException} with the specified
* detail message, cause, certification path, and index. * detail message, cause, certification path, and index.
* *
* @param msg the detail message (or <code>null</code> if none) * @param msg the detail message (or {@code null} if none)
* @param cause the cause (or <code>null</code> if none) * @param cause the cause (or {@code null} if none)
* @param certPath the certification path that was in the process of * @param certPath the certification path that was in the process of
* being validated when the error was encountered * being validated when the error was encountered
* @param index the index of the certificate in the certification path * @param index the index of the certificate in the certification path
* that caused the error (or -1 if not applicable). Note that * that caused the error (or -1 if not applicable). Note that
* the list of certificates in a <code>CertPath</code> is zero based. * the list of certificates in a {@code CertPath} is zero based.
* @throws IndexOutOfBoundsException if the index is out of range * @throws IndexOutOfBoundsException if the index is out of range
* {@code (index < -1 || (certPath != null && index >= * {@code (index < -1 || (certPath != null && index >=
* certPath.getCertificates().size()) } * certPath.getCertificates().size()) }
* @throws IllegalArgumentException if <code>certPath</code> is * @throws IllegalArgumentException if {@code certPath} is
* <code>null</code> and <code>index</code> is not -1 * {@code null} and {@code index} is not -1
*/ */
public CertPathValidatorException(String msg, Throwable cause, public CertPathValidatorException(String msg, Throwable cause,
CertPath certPath, int index) { CertPath certPath, int index) {
...@@ -152,23 +152,23 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -152,23 +152,23 @@ public class CertPathValidatorException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertPathValidatorException</code> with the specified * Creates a {@code CertPathValidatorException} with the specified
* detail message, cause, certification path, index, and reason. * detail message, cause, certification path, index, and reason.
* *
* @param msg the detail message (or <code>null</code> if none) * @param msg the detail message (or {@code null} if none)
* @param cause the cause (or <code>null</code> if none) * @param cause the cause (or {@code null} if none)
* @param certPath the certification path that was in the process of * @param certPath the certification path that was in the process of
* being validated when the error was encountered * being validated when the error was encountered
* @param index the index of the certificate in the certification path * @param index the index of the certificate in the certification path
* that caused the error (or -1 if not applicable). Note that * that caused the error (or -1 if not applicable). Note that
* the list of certificates in a <code>CertPath</code> is zero based. * the list of certificates in a {@code CertPath} is zero based.
* @param reason the reason the validation failed * @param reason the reason the validation failed
* @throws IndexOutOfBoundsException if the index is out of range * @throws IndexOutOfBoundsException if the index is out of range
* {@code (index < -1 || (certPath != null && index >= * {@code (index < -1 || (certPath != null && index >=
* certPath.getCertificates().size()) } * certPath.getCertificates().size()) }
* @throws IllegalArgumentException if <code>certPath</code> is * @throws IllegalArgumentException if {@code certPath} is
* <code>null</code> and <code>index</code> is not -1 * {@code null} and {@code index} is not -1
* @throws NullPointerException if <code>reason</code> is <code>null</code> * @throws NullPointerException if {@code reason} is {@code null}
* *
* @since 1.7 * @since 1.7
*/ */
...@@ -194,8 +194,8 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -194,8 +194,8 @@ public class CertPathValidatorException extends GeneralSecurityException {
* Returns the certification path that was being validated when * Returns the certification path that was being validated when
* the exception was thrown. * the exception was thrown.
* *
* @return the <code>CertPath</code> that was being validated when * @return the {@code CertPath} that was being validated when
* the exception was thrown (or <code>null</code> if not specified) * the exception was thrown (or {@code null} if not specified)
*/ */
public CertPath getCertPath() { public CertPath getCertPath() {
return this.certPath; return this.certPath;
...@@ -204,7 +204,7 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -204,7 +204,7 @@ public class CertPathValidatorException extends GeneralSecurityException {
/** /**
* Returns the index of the certificate in the certification path * Returns the index of the certificate in the certification path
* that caused the exception to be thrown. Note that the list of * that caused the exception to be thrown. Note that the list of
* certificates in a <code>CertPath</code> is zero based. If no * certificates in a {@code CertPath} is zero based. If no
* index has been set, -1 is returned. * index has been set, -1 is returned.
* *
* @return the index that has been set, or -1 if none has been set * @return the index that has been set, or -1 if none has been set
...@@ -219,7 +219,7 @@ public class CertPathValidatorException extends GeneralSecurityException { ...@@ -219,7 +219,7 @@ public class CertPathValidatorException extends GeneralSecurityException {
* {@link #getIndex}. * {@link #getIndex}.
* *
* @return the reason that the validation failed, or * @return the reason that the validation failed, or
* <code>BasicReason.UNSPECIFIED</code> if a reason has not been * {@code BasicReason.UNSPECIFIED} if a reason has not been
* specified * specified
* *
* @since 1.7 * @since 1.7
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -41,10 +41,10 @@ package java.security.cert; ...@@ -41,10 +41,10 @@ package java.security.cert;
public interface CertPathValidatorResult extends Cloneable { public interface CertPathValidatorResult extends Cloneable {
/** /**
* Makes a copy of this <code>CertPathValidatorResult</code>. Changes to the * Makes a copy of this {@code CertPathValidatorResult}. Changes to the
* copy will not affect the original and vice versa. * copy will not affect the original and vice versa.
* *
* @return a copy of this <code>CertPathValidatorResult</code> * @return a copy of this {@code CertPathValidatorResult}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -31,23 +31,23 @@ import java.security.InvalidAlgorithmParameterException; ...@@ -31,23 +31,23 @@ import java.security.InvalidAlgorithmParameterException;
* *
* The <i>Service Provider Interface</i> (<b>SPI</b>) * The <i>Service Provider Interface</i> (<b>SPI</b>)
* for the {@link CertPathValidator CertPathValidator} class. All * for the {@link CertPathValidator CertPathValidator} class. All
* <code>CertPathValidator</code> implementations must include a class (the * {@code CertPathValidator} implementations must include a class (the
* SPI class) that extends this class (<code>CertPathValidatorSpi</code>) * SPI class) that extends this class ({@code CertPathValidatorSpi})
* and implements all of its methods. In general, instances of this class * and implements all of its methods. In general, instances of this class
* should only be accessed through the <code>CertPathValidator</code> class. * should only be accessed through the {@code CertPathValidator} class.
* For details, see the Java Cryptography Architecture. * For details, see the Java Cryptography Architecture.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* Instances of this class need not be protected against concurrent * Instances of this class need not be protected against concurrent
* access from multiple threads. Threads that need to access a single * access from multiple threads. Threads that need to access a single
* <code>CertPathValidatorSpi</code> instance concurrently should synchronize * {@code CertPathValidatorSpi} instance concurrently should synchronize
* amongst themselves and provide the necessary locking before calling the * amongst themselves and provide the necessary locking before calling the
* wrapping <code>CertPathValidator</code> object. * wrapping {@code CertPathValidator} object.
* <p> * <p>
* However, implementations of <code>CertPathValidatorSpi</code> may still * However, implementations of {@code CertPathValidatorSpi} may still
* encounter concurrency issues, since multiple threads each * encounter concurrency issues, since multiple threads each
* manipulating a different <code>CertPathValidatorSpi</code> instance need not * manipulating a different {@code CertPathValidatorSpi} instance need not
* synchronize. * synchronize.
* *
* @since 1.4 * @since 1.4
...@@ -64,20 +64,20 @@ public abstract class CertPathValidatorSpi { ...@@ -64,20 +64,20 @@ public abstract class CertPathValidatorSpi {
* Validates the specified certification path using the specified * Validates the specified certification path using the specified
* algorithm parameter set. * algorithm parameter set.
* <p> * <p>
* The <code>CertPath</code> specified must be of a type that is * The {@code CertPath} specified must be of a type that is
* supported by the validation algorithm, otherwise an * supported by the validation algorithm, otherwise an
* <code>InvalidAlgorithmParameterException</code> will be thrown. For * {@code InvalidAlgorithmParameterException} will be thrown. For
* example, a <code>CertPathValidator</code> that implements the PKIX * example, a {@code CertPathValidator} that implements the PKIX
* algorithm validates <code>CertPath</code> objects of type X.509. * algorithm validates {@code CertPath} objects of type X.509.
* *
* @param certPath the <code>CertPath</code> to be validated * @param certPath the {@code CertPath} to be validated
* @param params the algorithm parameters * @param params the algorithm parameters
* @return the result of the validation algorithm * @return the result of the validation algorithm
* @exception CertPathValidatorException if the <code>CertPath</code> * @exception CertPathValidatorException if the {@code CertPath}
* does not validate * does not validate
* @exception InvalidAlgorithmParameterException if the specified * @exception InvalidAlgorithmParameterException if the specified
* parameters or the type of the specified <code>CertPath</code> are * parameters or the type of the specified {@code CertPath} are
* inappropriate for this <code>CertPathValidator</code> * inappropriate for this {@code CertPathValidator}
*/ */
public abstract CertPathValidatorResult public abstract CertPathValidatorResult
engineValidate(CertPath certPath, CertPathParameters params) engineValidate(CertPath certPath, CertPathParameters params)
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,9 +27,9 @@ package java.security.cert; ...@@ -27,9 +27,9 @@ package java.security.cert;
/** /**
* A selector that defines a set of criteria for selecting * A selector that defines a set of criteria for selecting
* <code>Certificate</code>s. Classes that implement this interface * {@code Certificate}s. Classes that implement this interface
* are often used to specify which <code>Certificate</code>s should * are often used to specify which {@code Certificate}s should
* be retrieved from a <code>CertStore</code>. * be retrieved from a {@code CertStore}.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
...@@ -49,19 +49,19 @@ package java.security.cert; ...@@ -49,19 +49,19 @@ package java.security.cert;
public interface CertSelector extends Cloneable { public interface CertSelector extends Cloneable {
/** /**
* Decides whether a <code>Certificate</code> should be selected. * Decides whether a {@code Certificate} should be selected.
* *
* @param cert the <code>Certificate</code> to be checked * @param cert the {@code Certificate} to be checked
* @return <code>true</code> if the <code>Certificate</code> * @return {@code true} if the {@code Certificate}
* should be selected, <code>false</code> otherwise * should be selected, {@code false} otherwise
*/ */
boolean match(Certificate cert); boolean match(Certificate cert);
/** /**
* Makes a copy of this <code>CertSelector</code>. Changes to the * Makes a copy of this {@code CertSelector}. Changes to the
* copy will not affect the original and vice versa. * copy will not affect the original and vice versa.
* *
* @return a copy of this <code>CertSelector</code> * @return a copy of this {@code CertSelector}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -38,32 +38,32 @@ import sun.security.jca.*; ...@@ -38,32 +38,32 @@ import sun.security.jca.*;
import sun.security.jca.GetInstance.Instance; import sun.security.jca.GetInstance.Instance;
/** /**
* A class for retrieving <code>Certificate</code>s and <code>CRL</code>s * A class for retrieving {@code Certificate}s and {@code CRL}s
* from a repository. * from a repository.
* <p> * <p>
* This class uses a provider-based architecture. * This class uses a provider-based architecture.
* To create a <code>CertStore</code>, call one of the static * To create a {@code CertStore}, call one of the static
* <code>getInstance</code> methods, passing in the type of * {@code getInstance} methods, passing in the type of
* <code>CertStore</code> desired, any applicable initialization parameters * {@code CertStore} desired, any applicable initialization parameters
* and optionally the name of the provider desired. * and optionally the name of the provider desired.
* <p> * <p>
* Once the <code>CertStore</code> has been created, it can be used to * Once the {@code CertStore} has been created, it can be used to
* retrieve <code>Certificate</code>s and <code>CRL</code>s by calling its * retrieve {@code Certificate}s and {@code CRL}s by calling its
* {@link #getCertificates(CertSelector selector) getCertificates} and * {@link #getCertificates(CertSelector selector) getCertificates} and
* {@link #getCRLs(CRLSelector selector) getCRLs} methods. * {@link #getCRLs(CRLSelector selector) getCRLs} methods.
* <p> * <p>
* Unlike a {@link java.security.KeyStore KeyStore}, which provides access * Unlike a {@link java.security.KeyStore KeyStore}, which provides access
* to a cache of private keys and trusted certificates, a * to a cache of private keys and trusted certificates, a
* <code>CertStore</code> is designed to provide access to a potentially * {@code CertStore} is designed to provide access to a potentially
* vast repository of untrusted certificates and CRLs. For example, an LDAP * vast repository of untrusted certificates and CRLs. For example, an LDAP
* implementation of <code>CertStore</code> provides access to certificates * implementation of {@code CertStore} provides access to certificates
* and CRLs stored in one or more directories using the LDAP protocol and the * and CRLs stored in one or more directories using the LDAP protocol and the
* schema as defined in the RFC service attribute. * schema as defined in the RFC service attribute.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>CertStore</code> type: * following standard {@code CertStore} type:
* <ul> * <ul>
* <li><tt>Collection</tt></li> * <li>{@code Collection}</li>
* </ul> * </ul>
* This type is described in the <a href= * This type is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
...@@ -75,10 +75,10 @@ import sun.security.jca.GetInstance.Instance; ...@@ -75,10 +75,10 @@ import sun.security.jca.GetInstance.Instance;
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* All public methods of <code>CertStore</code> objects must be thread-safe. * All public methods of {@code CertStore} objects must be thread-safe.
* That is, multiple threads may concurrently invoke these methods on a * That is, multiple threads may concurrently invoke these methods on a
* single <code>CertStore</code> object (or more than one) with no * single {@code CertStore} object (or more than one) with no
* ill effects. This allows a <code>CertPathBuilder</code> to search for a * ill effects. This allows a {@code CertPathBuilder} to search for a
* CRL while simultaneously searching for further certificates, for instance. * CRL while simultaneously searching for further certificates, for instance.
* <p> * <p>
* The static methods of this class are also guaranteed to be thread-safe. * The static methods of this class are also guaranteed to be thread-safe.
...@@ -104,13 +104,13 @@ public class CertStore { ...@@ -104,13 +104,13 @@ public class CertStore {
private CertStoreParameters params; private CertStoreParameters params;
/** /**
* Creates a <code>CertStore</code> object of the given type, and * Creates a {@code CertStore} object of the given type, and
* encapsulates the given provider implementation (SPI object) in it. * encapsulates the given provider implementation (SPI object) in it.
* *
* @param storeSpi the provider implementation * @param storeSpi the provider implementation
* @param provider the provider * @param provider the provider
* @param type the type * @param type the type
* @param params the initialization parameters (may be <code>null</code>) * @param params the initialization parameters (may be {@code null})
*/ */
protected CertStore(CertStoreSpi storeSpi, Provider provider, protected CertStore(CertStoreSpi storeSpi, Provider provider,
String type, CertStoreParameters params) { String type, CertStoreParameters params) {
...@@ -122,28 +122,28 @@ public class CertStore { ...@@ -122,28 +122,28 @@ public class CertStore {
} }
/** /**
* Returns a <code>Collection</code> of <code>Certificate</code>s that * Returns a {@code Collection} of {@code Certificate}s that
* match the specified selector. If no <code>Certificate</code>s * match the specified selector. If no {@code Certificate}s
* match the selector, an empty <code>Collection</code> will be returned. * match the selector, an empty {@code Collection} will be returned.
* <p> * <p>
* For some <code>CertStore</code> types, the resulting * For some {@code CertStore} types, the resulting
* <code>Collection</code> may not contain <b>all</b> of the * {@code Collection} may not contain <b>all</b> of the
* <code>Certificate</code>s that match the selector. For instance, * {@code Certificate}s that match the selector. For instance,
* an LDAP <code>CertStore</code> may not search all entries in the * an LDAP {@code CertStore} may not search all entries in the
* directory. Instead, it may just search entries that are likely to * directory. Instead, it may just search entries that are likely to
* contain the <code>Certificate</code>s it is looking for. * contain the {@code Certificate}s it is looking for.
* <p> * <p>
* Some <code>CertStore</code> implementations (especially LDAP * Some {@code CertStore} implementations (especially LDAP
* <code>CertStore</code>s) may throw a <code>CertStoreException</code> * {@code CertStore}s) may throw a {@code CertStoreException}
* unless a non-null <code>CertSelector</code> is provided that * unless a non-null {@code CertSelector} is provided that
* includes specific criteria that can be used to find the certificates. * includes specific criteria that can be used to find the certificates.
* Issuer and/or subject names are especially useful criteria. * Issuer and/or subject names are especially useful criteria.
* *
* @param selector A <code>CertSelector</code> used to select which * @param selector A {@code CertSelector} used to select which
* <code>Certificate</code>s should be returned. Specify <code>null</code> * {@code Certificate}s should be returned. Specify {@code null}
* to return all <code>Certificate</code>s (if supported). * to return all {@code Certificate}s (if supported).
* @return A <code>Collection</code> of <code>Certificate</code>s that * @return A {@code Collection} of {@code Certificate}s that
* match the specified selector (never <code>null</code>) * match the specified selector (never {@code null})
* @throws CertStoreException if an exception occurs * @throws CertStoreException if an exception occurs
*/ */
public final Collection<? extends Certificate> getCertificates public final Collection<? extends Certificate> getCertificates
...@@ -152,28 +152,28 @@ public class CertStore { ...@@ -152,28 +152,28 @@ public class CertStore {
} }
/** /**
* Returns a <code>Collection</code> of <code>CRL</code>s that * Returns a {@code Collection} of {@code CRL}s that
* match the specified selector. If no <code>CRL</code>s * match the specified selector. If no {@code CRL}s
* match the selector, an empty <code>Collection</code> will be returned. * match the selector, an empty {@code Collection} will be returned.
* <p> * <p>
* For some <code>CertStore</code> types, the resulting * For some {@code CertStore} types, the resulting
* <code>Collection</code> may not contain <b>all</b> of the * {@code Collection} may not contain <b>all</b> of the
* <code>CRL</code>s that match the selector. For instance, * {@code CRL}s that match the selector. For instance,
* an LDAP <code>CertStore</code> may not search all entries in the * an LDAP {@code CertStore} may not search all entries in the
* directory. Instead, it may just search entries that are likely to * directory. Instead, it may just search entries that are likely to
* contain the <code>CRL</code>s it is looking for. * contain the {@code CRL}s it is looking for.
* <p> * <p>
* Some <code>CertStore</code> implementations (especially LDAP * Some {@code CertStore} implementations (especially LDAP
* <code>CertStore</code>s) may throw a <code>CertStoreException</code> * {@code CertStore}s) may throw a {@code CertStoreException}
* unless a non-null <code>CRLSelector</code> is provided that * unless a non-null {@code CRLSelector} is provided that
* includes specific criteria that can be used to find the CRLs. * includes specific criteria that can be used to find the CRLs.
* Issuer names and/or the certificate to be checked are especially useful. * Issuer names and/or the certificate to be checked are especially useful.
* *
* @param selector A <code>CRLSelector</code> used to select which * @param selector A {@code CRLSelector} used to select which
* <code>CRL</code>s should be returned. Specify <code>null</code> * {@code CRL}s should be returned. Specify {@code null}
* to return all <code>CRL</code>s (if supported). * to return all {@code CRL}s (if supported).
* @return A <code>Collection</code> of <code>CRL</code>s that * @return A {@code Collection} of {@code CRL}s that
* match the specified selector (never <code>null</code>) * match the specified selector (never {@code null})
* @throws CertStoreException if an exception occurs * @throws CertStoreException if an exception occurs
*/ */
public final Collection<? extends CRL> getCRLs(CRLSelector selector) public final Collection<? extends CRL> getCRLs(CRLSelector selector)
...@@ -182,8 +182,8 @@ public class CertStore { ...@@ -182,8 +182,8 @@ public class CertStore {
} }
/** /**
* Returns a <code>CertStore</code> object that implements the specified * Returns a {@code CertStore} object that implements the specified
* <code>CertStore</code> type and is initialized with the specified * {@code CertStore} type and is initialized with the specified
* parameters. * parameters.
* *
* <p> This method traverses the list of registered security Providers, * <p> This method traverses the list of registered security Providers,
...@@ -195,29 +195,29 @@ public class CertStore { ...@@ -195,29 +195,29 @@ public class CertStore {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p>The <code>CertStore</code> that is returned is initialized with the * <p>The {@code CertStore} that is returned is initialized with the
* specified <code>CertStoreParameters</code>. The type of parameters * specified {@code CertStoreParameters}. The type of parameters
* needed may vary between different types of <code>CertStore</code>s. * needed may vary between different types of {@code CertStore}s.
* Note that the specified <code>CertStoreParameters</code> object is * Note that the specified {@code CertStoreParameters} object is
* cloned. * cloned.
* *
* @param type the name of the requested <code>CertStore</code> type. * @param type the name of the requested {@code CertStore} type.
* See the CertStore section in the <a href= * See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard types. * for information about standard types.
* *
* @param params the initialization parameters (may be <code>null</code>). * @param params the initialization parameters (may be {@code null}).
* *
* @return a <code>CertStore</code> object that implements the specified * @return a {@code CertStore} object that implements the specified
* <code>CertStore</code> type. * {@code CertStore} type.
* *
* @throws NoSuchAlgorithmException if no Provider supports a * @throws NoSuchAlgorithmException if no Provider supports a
* CertStoreSpi implementation for the specified type. * CertStoreSpi implementation for the specified type.
* *
* @throws InvalidAlgorithmParameterException if the specified * @throws InvalidAlgorithmParameterException if the specified
* initialization parameters are inappropriate for this * initialization parameters are inappropriate for this
* <code>CertStore</code>. * {@code CertStore}.
* *
* @see java.security.Provider * @see java.security.Provider
*/ */
...@@ -244,8 +244,8 @@ public class CertStore { ...@@ -244,8 +244,8 @@ public class CertStore {
} }
/** /**
* Returns a <code>CertStore</code> object that implements the specified * Returns a {@code CertStore} object that implements the specified
* <code>CertStore</code> type. * {@code CertStore} type.
* *
* <p> A new CertStore object encapsulating the * <p> A new CertStore object encapsulating the
* CertStoreSpi implementation from the specified provider * CertStoreSpi implementation from the specified provider
...@@ -255,23 +255,23 @@ public class CertStore { ...@@ -255,23 +255,23 @@ public class CertStore {
* <p> Note that the list of registered providers may be retrieved via * <p> Note that the list of registered providers may be retrieved via
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p>The <code>CertStore</code> that is returned is initialized with the * <p>The {@code CertStore} that is returned is initialized with the
* specified <code>CertStoreParameters</code>. The type of parameters * specified {@code CertStoreParameters}. The type of parameters
* needed may vary between different types of <code>CertStore</code>s. * needed may vary between different types of {@code CertStore}s.
* Note that the specified <code>CertStoreParameters</code> object is * Note that the specified {@code CertStoreParameters} object is
* cloned. * cloned.
* *
* @param type the requested <code>CertStore</code> type. * @param type the requested {@code CertStore} type.
* See the CertStore section in the <a href= * See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard types. * for information about standard types.
* *
* @param params the initialization parameters (may be <code>null</code>). * @param params the initialization parameters (may be {@code null}).
* *
* @param provider the name of the provider. * @param provider the name of the provider.
* *
* @return a <code>CertStore</code> object that implements the * @return a {@code CertStore} object that implements the
* specified type. * specified type.
* *
* @throws NoSuchAlgorithmException if a CertStoreSpi * @throws NoSuchAlgorithmException if a CertStoreSpi
...@@ -280,12 +280,12 @@ public class CertStore { ...@@ -280,12 +280,12 @@ public class CertStore {
* *
* @throws InvalidAlgorithmParameterException if the specified * @throws InvalidAlgorithmParameterException if the specified
* initialization parameters are inappropriate for this * initialization parameters are inappropriate for this
* <code>CertStore</code>. * {@code CertStore}.
* *
* @throws NoSuchProviderException if the specified provider is not * @throws NoSuchProviderException if the specified provider is not
* registered in the security provider list. * registered in the security provider list.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null or empty. * null or empty.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -305,31 +305,31 @@ public class CertStore { ...@@ -305,31 +305,31 @@ public class CertStore {
} }
/** /**
* Returns a <code>CertStore</code> object that implements the specified * Returns a {@code CertStore} object that implements the specified
* <code>CertStore</code> type. * {@code CertStore} type.
* *
* <p> A new CertStore object encapsulating the * <p> A new CertStore object encapsulating the
* CertStoreSpi implementation from the specified Provider * CertStoreSpi implementation from the specified Provider
* object is returned. Note that the specified Provider object * object is returned. Note that the specified Provider object
* does not have to be registered in the provider list. * does not have to be registered in the provider list.
* *
* <p>The <code>CertStore</code> that is returned is initialized with the * <p>The {@code CertStore} that is returned is initialized with the
* specified <code>CertStoreParameters</code>. The type of parameters * specified {@code CertStoreParameters}. The type of parameters
* needed may vary between different types of <code>CertStore</code>s. * needed may vary between different types of {@code CertStore}s.
* Note that the specified <code>CertStoreParameters</code> object is * Note that the specified {@code CertStoreParameters} object is
* cloned. * cloned.
* *
* @param type the requested <code>CertStore</code> type. * @param type the requested {@code CertStore} type.
* See the CertStore section in the <a href= * See the CertStore section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertStore">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard types. * for information about standard types.
* *
* @param params the initialization parameters (may be <code>null</code>). * @param params the initialization parameters (may be {@code null}).
* *
* @param provider the provider. * @param provider the provider.
* *
* @return a <code>CertStore</code> object that implements the * @return a {@code CertStore} object that implements the
* specified type. * specified type.
* *
* @exception NoSuchAlgorithmException if a CertStoreSpi * @exception NoSuchAlgorithmException if a CertStoreSpi
...@@ -338,9 +338,9 @@ public class CertStore { ...@@ -338,9 +338,9 @@ public class CertStore {
* *
* @throws InvalidAlgorithmParameterException if the specified * @throws InvalidAlgorithmParameterException if the specified
* initialization parameters are inappropriate for this * initialization parameters are inappropriate for this
* <code>CertStore</code> * {@code CertStore}
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null. * null.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -359,30 +359,30 @@ public class CertStore { ...@@ -359,30 +359,30 @@ public class CertStore {
} }
/** /**
* Returns the parameters used to initialize this <code>CertStore</code>. * Returns the parameters used to initialize this {@code CertStore}.
* Note that the <code>CertStoreParameters</code> object is cloned before * Note that the {@code CertStoreParameters} object is cloned before
* it is returned. * it is returned.
* *
* @return the parameters used to initialize this <code>CertStore</code> * @return the parameters used to initialize this {@code CertStore}
* (may be <code>null</code>) * (may be {@code null})
*/ */
public final CertStoreParameters getCertStoreParameters() { public final CertStoreParameters getCertStoreParameters() {
return (params == null ? null : (CertStoreParameters) params.clone()); return (params == null ? null : (CertStoreParameters) params.clone());
} }
/** /**
* Returns the type of this <code>CertStore</code>. * Returns the type of this {@code CertStore}.
* *
* @return the type of this <code>CertStore</code> * @return the type of this {@code CertStore}
*/ */
public final String getType() { public final String getType() {
return this.type; return this.type;
} }
/** /**
* Returns the provider of this <code>CertStore</code>. * Returns the provider of this {@code CertStore}.
* *
* @return the provider of this <code>CertStore</code> * @return the provider of this {@code CertStore}
*/ */
public final Provider getProvider() { public final Provider getProvider() {
return this.provider; return this.provider;
......
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,9 +29,9 @@ import java.security.GeneralSecurityException; ...@@ -29,9 +29,9 @@ import java.security.GeneralSecurityException;
/** /**
* An exception indicating one of a variety of problems retrieving * An exception indicating one of a variety of problems retrieving
* certificates and CRLs from a <code>CertStore</code>. * certificates and CRLs from a {@code CertStore}.
* <p> * <p>
* A <code>CertStoreException</code> provides support for wrapping * A {@code CertStoreException} provides support for wrapping
* exceptions. The {@link #getCause getCause} method returns the throwable, * exceptions. The {@link #getCause getCause} method returns the throwable,
* if any, that caused this exception to be thrown. * if any, that caused this exception to be thrown.
* <p> * <p>
...@@ -53,7 +53,7 @@ public class CertStoreException extends GeneralSecurityException { ...@@ -53,7 +53,7 @@ public class CertStoreException extends GeneralSecurityException {
private static final long serialVersionUID = 2395296107471573245L; private static final long serialVersionUID = 2395296107471573245L;
/** /**
* Creates a <code>CertStoreException</code> with <code>null</code> as * Creates a {@code CertStoreException} with {@code null} as
* its detail message. * its detail message.
*/ */
public CertStoreException() { public CertStoreException() {
...@@ -61,8 +61,8 @@ public class CertStoreException extends GeneralSecurityException { ...@@ -61,8 +61,8 @@ public class CertStoreException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertStoreException</code> with the given detail * Creates a {@code CertStoreException} with the given detail
* message. A detail message is a <code>String</code> that describes this * message. A detail message is a {@code String} that describes this
* particular exception. * particular exception.
* *
* @param msg the detail message * @param msg the detail message
...@@ -72,15 +72,15 @@ public class CertStoreException extends GeneralSecurityException { ...@@ -72,15 +72,15 @@ public class CertStoreException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertStoreException</code> that wraps the specified * Creates a {@code CertStoreException} that wraps the specified
* throwable. This allows any exception to be converted into a * throwable. This allows any exception to be converted into a
* <code>CertStoreException</code>, while retaining information about the * {@code CertStoreException}, while retaining information about the
* cause, which may be useful for debugging. The detail message is * cause, which may be useful for debugging. The detail message is
* set to (<code>cause==null ? null : cause.toString()</code>) (which * set to ({@code cause==null ? null : cause.toString()}) (which
* typically contains the class and detail message of cause). * typically contains the class and detail message of cause).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertStoreException(Throwable cause) { public CertStoreException(Throwable cause) {
...@@ -88,12 +88,12 @@ public class CertStoreException extends GeneralSecurityException { ...@@ -88,12 +88,12 @@ public class CertStoreException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertStoreException</code> with the specified detail * Creates a {@code CertStoreException} with the specified detail
* message and cause. * message and cause.
* *
* @param msg the detail message * @param msg the detail message
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause getCause()} method). (A <code>null</code> value is * {@link #getCause getCause()} method). (A {@code null} value is
* permitted, and indicates that the cause is nonexistent or unknown.) * permitted, and indicates that the cause is nonexistent or unknown.)
*/ */
public CertStoreException(String msg, Throwable cause) { public CertStoreException(String msg, Throwable cause) {
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,20 +26,20 @@ ...@@ -26,20 +26,20 @@
package java.security.cert; package java.security.cert;
/** /**
* A specification of <code>CertStore</code> parameters. * A specification of {@code CertStore} parameters.
* <p> * <p>
* The purpose of this interface is to group (and provide type safety for) * The purpose of this interface is to group (and provide type safety for)
* all <code>CertStore</code> parameter specifications. All * all {@code CertStore} parameter specifications. All
* <code>CertStore</code> parameter specifications must implement this * {@code CertStore} parameter specifications must implement this
* interface. * interface.
* <p> * <p>
* Typically, a <code>CertStoreParameters</code> object is passed as a parameter * Typically, a {@code CertStoreParameters} object is passed as a parameter
* to one of the {@link CertStore#getInstance CertStore.getInstance} methods. * to one of the {@link CertStore#getInstance CertStore.getInstance} methods.
* The <code>getInstance</code> method returns a <code>CertStore</code> that * The {@code getInstance} method returns a {@code CertStore} that
* is used for retrieving <code>Certificate</code>s and <code>CRL</code>s. The * is used for retrieving {@code Certificate}s and {@code CRL}s. The
* <code>CertStore</code> that is returned is initialized with the specified * {@code CertStore} that is returned is initialized with the specified
* parameters. The type of parameters needed may vary between different types * parameters. The type of parameters needed may vary between different types
* of <code>CertStore</code>s. * of {@code CertStore}s.
* *
* @see CertStore#getInstance * @see CertStore#getInstance
* *
...@@ -49,32 +49,32 @@ package java.security.cert; ...@@ -49,32 +49,32 @@ package java.security.cert;
public interface CertStoreParameters extends Cloneable { public interface CertStoreParameters extends Cloneable {
/** /**
* Makes a copy of this <code>CertStoreParameters</code>. * Makes a copy of this {@code CertStoreParameters}.
* <p> * <p>
* The precise meaning of "copy" may depend on the class of * The precise meaning of "copy" may depend on the class of
* the <code>CertStoreParameters</code> object. A typical implementation * the {@code CertStoreParameters} object. A typical implementation
* performs a "deep copy" of this object, but this is not an absolute * performs a "deep copy" of this object, but this is not an absolute
* requirement. Some implementations may perform a "shallow copy" of some * requirement. Some implementations may perform a "shallow copy" of some
* or all of the fields of this object. * or all of the fields of this object.
* <p> * <p>
* Note that the <code>CertStore.getInstance</code> methods make a copy * Note that the {@code CertStore.getInstance} methods make a copy
* of the specified <code>CertStoreParameters</code>. A deep copy * of the specified {@code CertStoreParameters}. A deep copy
* implementation of <code>clone</code> is safer and more robust, as it * implementation of {@code clone} is safer and more robust, as it
* prevents the caller from corrupting a shared <code>CertStore</code> by * prevents the caller from corrupting a shared {@code CertStore} by
* subsequently modifying the contents of its initialization parameters. * subsequently modifying the contents of its initialization parameters.
* However, a shallow copy implementation of <code>clone</code> is more * However, a shallow copy implementation of {@code clone} is more
* appropriate for applications that need to hold a reference to a * appropriate for applications that need to hold a reference to a
* parameter contained in the <code>CertStoreParameters</code>. For example, * parameter contained in the {@code CertStoreParameters}. For example,
* a shallow copy clone allows an application to release the resources of * a shallow copy clone allows an application to release the resources of
* a particular <code>CertStore</code> initialization parameter immediately, * a particular {@code CertStore} initialization parameter immediately,
* rather than waiting for the garbage collection mechanism. This should * rather than waiting for the garbage collection mechanism. This should
* be done with the utmost care, since the <code>CertStore</code> may still * be done with the utmost care, since the {@code CertStore} may still
* be in use by other threads. * be in use by other threads.
* <p> * <p>
* Each subclass should state the precise behavior of this method so * Each subclass should state the precise behavior of this method so
* that users and developers know what to expect. * that users and developers know what to expect.
* *
* @return a copy of this <code>CertStoreParameters</code> * @return a copy of this {@code CertStoreParameters}
*/ */
Object clone(); Object clone();
} }
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,26 +30,26 @@ import java.util.Collection; ...@@ -30,26 +30,26 @@ import java.util.Collection;
/** /**
* The <i>Service Provider Interface</i> (<b>SPI</b>) * The <i>Service Provider Interface</i> (<b>SPI</b>)
* for the {@link CertStore CertStore} class. All <code>CertStore</code> * for the {@link CertStore CertStore} class. All {@code CertStore}
* implementations must include a class (the SPI class) that extends * implementations must include a class (the SPI class) that extends
* this class (<code>CertStoreSpi</code>), provides a constructor with * this class ({@code CertStoreSpi}), provides a constructor with
* a single argument of type <code>CertStoreParameters</code>, and implements * a single argument of type {@code CertStoreParameters}, and implements
* all of its methods. In general, instances of this class should only be * all of its methods. In general, instances of this class should only be
* accessed through the <code>CertStore</code> class. * accessed through the {@code CertStore} class.
* For details, see the Java Cryptography Architecture. * For details, see the Java Cryptography Architecture.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* The public methods of all <code>CertStoreSpi</code> objects must be * The public methods of all {@code CertStoreSpi} objects must be
* thread-safe. That is, multiple threads may concurrently invoke these * thread-safe. That is, multiple threads may concurrently invoke these
* methods on a single <code>CertStoreSpi</code> object (or more than one) * methods on a single {@code CertStoreSpi} object (or more than one)
* with no ill effects. This allows a <code>CertPathBuilder</code> to search * with no ill effects. This allows a {@code CertPathBuilder} to search
* for a CRL while simultaneously searching for further certificates, for * for a CRL while simultaneously searching for further certificates, for
* instance. * instance.
* <p> * <p>
* Simple <code>CertStoreSpi</code> implementations will probably ensure * Simple {@code CertStoreSpi} implementations will probably ensure
* thread safety by adding a <code>synchronized</code> keyword to their * thread safety by adding a {@code synchronized} keyword to their
* <code>engineGetCertificates</code> and <code>engineGetCRLs</code> methods. * {@code engineGetCertificates} and {@code engineGetCRLs} methods.
* More sophisticated ones may allow truly concurrent access. * More sophisticated ones may allow truly concurrent access.
* *
* @since 1.4 * @since 1.4
...@@ -60,64 +60,64 @@ public abstract class CertStoreSpi { ...@@ -60,64 +60,64 @@ public abstract class CertStoreSpi {
/** /**
* The sole constructor. * The sole constructor.
* *
* @param params the initialization parameters (may be <code>null</code>) * @param params the initialization parameters (may be {@code null})
* @throws InvalidAlgorithmParameterException if the initialization * @throws InvalidAlgorithmParameterException if the initialization
* parameters are inappropriate for this <code>CertStoreSpi</code> * parameters are inappropriate for this {@code CertStoreSpi}
*/ */
public CertStoreSpi(CertStoreParameters params) public CertStoreSpi(CertStoreParameters params)
throws InvalidAlgorithmParameterException { } throws InvalidAlgorithmParameterException { }
/** /**
* Returns a <code>Collection</code> of <code>Certificate</code>s that * Returns a {@code Collection} of {@code Certificate}s that
* match the specified selector. If no <code>Certificate</code>s * match the specified selector. If no {@code Certificate}s
* match the selector, an empty <code>Collection</code> will be returned. * match the selector, an empty {@code Collection} will be returned.
* <p> * <p>
* For some <code>CertStore</code> types, the resulting * For some {@code CertStore} types, the resulting
* <code>Collection</code> may not contain <b>all</b> of the * {@code Collection} may not contain <b>all</b> of the
* <code>Certificate</code>s that match the selector. For instance, * {@code Certificate}s that match the selector. For instance,
* an LDAP <code>CertStore</code> may not search all entries in the * an LDAP {@code CertStore} may not search all entries in the
* directory. Instead, it may just search entries that are likely to * directory. Instead, it may just search entries that are likely to
* contain the <code>Certificate</code>s it is looking for. * contain the {@code Certificate}s it is looking for.
* <p> * <p>
* Some <code>CertStore</code> implementations (especially LDAP * Some {@code CertStore} implementations (especially LDAP
* <code>CertStore</code>s) may throw a <code>CertStoreException</code> * {@code CertStore}s) may throw a {@code CertStoreException}
* unless a non-null <code>CertSelector</code> is provided that includes * unless a non-null {@code CertSelector} is provided that includes
* specific criteria that can be used to find the certificates. Issuer * specific criteria that can be used to find the certificates. Issuer
* and/or subject names are especially useful criteria. * and/or subject names are especially useful criteria.
* *
* @param selector A <code>CertSelector</code> used to select which * @param selector A {@code CertSelector} used to select which
* <code>Certificate</code>s should be returned. Specify <code>null</code> * {@code Certificate}s should be returned. Specify {@code null}
* to return all <code>Certificate</code>s (if supported). * to return all {@code Certificate}s (if supported).
* @return A <code>Collection</code> of <code>Certificate</code>s that * @return A {@code Collection} of {@code Certificate}s that
* match the specified selector (never <code>null</code>) * match the specified selector (never {@code null})
* @throws CertStoreException if an exception occurs * @throws CertStoreException if an exception occurs
*/ */
public abstract Collection<? extends Certificate> engineGetCertificates public abstract Collection<? extends Certificate> engineGetCertificates
(CertSelector selector) throws CertStoreException; (CertSelector selector) throws CertStoreException;
/** /**
* Returns a <code>Collection</code> of <code>CRL</code>s that * Returns a {@code Collection} of {@code CRL}s that
* match the specified selector. If no <code>CRL</code>s * match the specified selector. If no {@code CRL}s
* match the selector, an empty <code>Collection</code> will be returned. * match the selector, an empty {@code Collection} will be returned.
* <p> * <p>
* For some <code>CertStore</code> types, the resulting * For some {@code CertStore} types, the resulting
* <code>Collection</code> may not contain <b>all</b> of the * {@code Collection} may not contain <b>all</b> of the
* <code>CRL</code>s that match the selector. For instance, * {@code CRL}s that match the selector. For instance,
* an LDAP <code>CertStore</code> may not search all entries in the * an LDAP {@code CertStore} may not search all entries in the
* directory. Instead, it may just search entries that are likely to * directory. Instead, it may just search entries that are likely to
* contain the <code>CRL</code>s it is looking for. * contain the {@code CRL}s it is looking for.
* <p> * <p>
* Some <code>CertStore</code> implementations (especially LDAP * Some {@code CertStore} implementations (especially LDAP
* <code>CertStore</code>s) may throw a <code>CertStoreException</code> * {@code CertStore}s) may throw a {@code CertStoreException}
* unless a non-null <code>CRLSelector</code> is provided that includes * unless a non-null {@code CRLSelector} is provided that includes
* specific criteria that can be used to find the CRLs. Issuer names * specific criteria that can be used to find the CRLs. Issuer names
* and/or the certificate to be checked are especially useful. * and/or the certificate to be checked are especially useful.
* *
* @param selector A <code>CRLSelector</code> used to select which * @param selector A {@code CRLSelector} used to select which
* <code>CRL</code>s should be returned. Specify <code>null</code> * {@code CRL}s should be returned. Specify {@code null}
* to return all <code>CRL</code>s (if supported). * to return all {@code CRL}s (if supported).
* @return A <code>Collection</code> of <code>CRL</code>s that * @return A {@code Collection} of {@code CRL}s that
* match the specified selector (never <code>null</code>) * match the specified selector (never {@code null})
* @throws CertStoreException if an exception occurs * @throws CertStoreException if an exception occurs
*/ */
public abstract Collection<? extends CRL> engineGetCRLs public abstract Collection<? extends CRL> engineGetCRLs
......
/* /*
* Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -90,8 +90,8 @@ public abstract class Certificate implements java.io.Serializable { ...@@ -90,8 +90,8 @@ public abstract class Certificate implements java.io.Serializable {
/** /**
* Compares this certificate for equality with the specified * Compares this certificate for equality with the specified
* object. If the <code>other</code> object is an * object. If the {@code other} object is an
* <code>instanceof</code> <code>Certificate</code>, then * {@code instanceof} {@code Certificate}, then
* its encoded form is retrieved and compared with the * its encoded form is retrieved and compared with the
* encoded form of this certificate. * encoded form of this certificate.
* *
...@@ -196,8 +196,8 @@ public abstract class Certificate implements java.io.Serializable { ...@@ -196,8 +196,8 @@ public abstract class Certificate implements java.io.Serializable {
* *
* <p> This method was added to version 1.8 of the Java Platform * <p> This method was added to version 1.8 of the Java Platform
* Standard Edition. In order to maintain backwards compatibility with * Standard Edition. In order to maintain backwards compatibility with
* existing service providers, this method cannot be <code>abstract</code> * existing service providers, this method cannot be {@code abstract}
* and by default throws an <code>UnsupportedOperationException</code>. * and by default throws an {@code UnsupportedOperationException}.
* *
* @param key the PublicKey used to carry out the verification. * @param key the PublicKey used to carry out the verification.
* @param sigProvider the signature provider. * @param sigProvider the signature provider.
......
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -56,13 +56,13 @@ public class CertificateEncodingException extends CertificateException { ...@@ -56,13 +56,13 @@ public class CertificateEncodingException extends CertificateException {
} }
/** /**
* Creates a <code>CertificateEncodingException</code> with the specified * Creates a {@code CertificateEncodingException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -71,14 +71,14 @@ public class CertificateEncodingException extends CertificateException { ...@@ -71,14 +71,14 @@ public class CertificateEncodingException extends CertificateException {
} }
/** /**
* Creates a <code>CertificateEncodingException</code> * Creates a {@code CertificateEncodingException}
* with the specified cause and a detail message of * with the specified cause and a detail message of
* <tt>(cause==null ? null : cause.toString())</tt> * {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -57,13 +57,13 @@ public class CertificateException extends GeneralSecurityException { ...@@ -57,13 +57,13 @@ public class CertificateException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertificateException</code> with the specified * Creates a {@code CertificateException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -72,13 +72,13 @@ public class CertificateException extends GeneralSecurityException { ...@@ -72,13 +72,13 @@ public class CertificateException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>CertificateException</code> with the specified cause * Creates a {@code CertificateException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package java.security.cert; ...@@ -27,8 +27,8 @@ package java.security.cert;
/** /**
* Certificate Expired Exception. This is thrown whenever the current * Certificate Expired Exception. This is thrown whenever the current
* <code>Date</code> or the specified <code>Date</code> is after the * {@code Date} or the specified {@code Date} is after the
* <code>notAfter</code> date/time specified in the validity period * {@code notAfter} date/time specified in the validity period
* of the certificate. * of the certificate.
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
/* /*
* Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -41,27 +41,27 @@ import sun.security.jca.GetInstance.Instance; ...@@ -41,27 +41,27 @@ import sun.security.jca.GetInstance.Instance;
/** /**
* This class defines the functionality of a certificate factory, which is * This class defines the functionality of a certificate factory, which is
* used to generate certificate, certification path (<code>CertPath</code>) * used to generate certificate, certification path ({@code CertPath})
* and certificate revocation list (CRL) objects from their encodings. * and certificate revocation list (CRL) objects from their encodings.
* *
* <p>For encodings consisting of multiple certificates, use * <p>For encodings consisting of multiple certificates, use
* <code>generateCertificates</code> when you want to * {@code generateCertificates} when you want to
* parse a collection of possibly unrelated certificates. Otherwise, * parse a collection of possibly unrelated certificates. Otherwise,
* use <code>generateCertPath</code> when you want to generate * use {@code generateCertPath} when you want to generate
* a <code>CertPath</code> (a certificate chain) and subsequently * a {@code CertPath} (a certificate chain) and subsequently
* validate it with a <code>CertPathValidator</code>. * validate it with a {@code CertPathValidator}.
* *
* <p>A certificate factory for X.509 must return certificates that are an * <p>A certificate factory for X.509 must return certificates that are an
* instance of <code>java.security.cert.X509Certificate</code>, and CRLs * instance of {@code java.security.cert.X509Certificate}, and CRLs
* that are an instance of <code>java.security.cert.X509CRL</code>. * that are an instance of {@code java.security.cert.X509CRL}.
* *
* <p>The following example reads a file with Base64 encoded certificates, * <p>The following example reads a file with Base64 encoded certificates,
* which are each bounded at the beginning by -----BEGIN CERTIFICATE-----, and * which are each bounded at the beginning by -----BEGIN CERTIFICATE-----, and
* bounded at the end by -----END CERTIFICATE-----. We convert the * bounded at the end by -----END CERTIFICATE-----. We convert the
* <code>FileInputStream</code> (which does not support <code>mark</code> * {@code FileInputStream} (which does not support {@code mark}
* and <code>reset</code>) to a <code>BufferedInputStream</code> (which * and {@code reset}) to a {@code BufferedInputStream} (which
* supports those methods), so that each call to * supports those methods), so that each call to
* <code>generateCertificate</code> consumes only one certificate, and the * {@code generateCertificate} consumes only one certificate, and the
* read position of the input stream is positioned to the next certificate in * read position of the input stream is positioned to the next certificate in
* the file:<p> * the file:<p>
* *
...@@ -92,14 +92,14 @@ import sun.security.jca.GetInstance.Instance; ...@@ -92,14 +92,14 @@ import sun.security.jca.GetInstance.Instance;
* </pre> * </pre>
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>CertificateFactory</code> type: * following standard {@code CertificateFactory} type:
* <ul> * <ul>
* <li><tt>X.509</tt></li> * <li>{@code X.509}</li>
* </ul> * </ul>
* and the following standard <code>CertPath</code> encodings: * and the following standard {@code CertPath} encodings:
* <ul> * <ul>
* <li><tt>PKCS7</tt></li> * <li>{@code PKCS7}</li>
* <li><tt>PkiPath</tt></li> * <li>{@code PkiPath}</li>
* </ul> * </ul>
* The type and encodings are described in the <a href= * The type and encodings are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertificateFactory">
...@@ -258,7 +258,7 @@ public class CertificateFactory { ...@@ -258,7 +258,7 @@ public class CertificateFactory {
* implementation for the specified algorithm is not available * implementation for the specified algorithm is not available
* from the specified Provider object. * from the specified Provider object.
* *
* @exception IllegalArgumentException if the <code>provider</code> is * @exception IllegalArgumentException if the {@code provider} is
* null. * null.
* *
* @see java.security.Provider * @see java.security.Provider
...@@ -299,17 +299,17 @@ public class CertificateFactory { ...@@ -299,17 +299,17 @@ public class CertificateFactory {
/** /**
* Generates a certificate object and initializes it with * Generates a certificate object and initializes it with
* the data read from the input stream <code>inStream</code>. * the data read from the input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized certificate format * <p>In order to take advantage of the specialized certificate format
* supported by this certificate factory, * supported by this certificate factory,
* the returned certificate object can be typecast to the corresponding * the returned certificate object can be typecast to the corresponding
* certificate class. For example, if this certificate * certificate class. For example, if this certificate
* factory implements X.509 certificates, the returned certificate object * factory implements X.509 certificates, the returned certificate object
* can be typecast to the <code>X509Certificate</code> class. * can be typecast to the {@code X509Certificate} class.
* *
* <p>In the case of a certificate factory for X.509 certificates, the * <p>In the case of a certificate factory for X.509 certificates, the
* certificate provided in <code>inStream</code> must be DER-encoded and * certificate provided in {@code inStream} must be DER-encoded and
* may be supplied in binary or printable (Base64) encoding. If the * may be supplied in binary or printable (Base64) encoding. If the
* certificate is provided in Base64 encoding, it must be bounded at * certificate is provided in Base64 encoding, it must be bounded at
* the beginning by -----BEGIN CERTIFICATE-----, and must be bounded at * the beginning by -----BEGIN CERTIFICATE-----, and must be bounded at
...@@ -324,7 +324,7 @@ public class CertificateFactory { ...@@ -324,7 +324,7 @@ public class CertificateFactory {
* the inherent end-of-certificate marker. If the data in the input stream * the inherent end-of-certificate marker. If the data in the input stream
* does not contain an inherent end-of-certificate marker (other * does not contain an inherent end-of-certificate marker (other
* than EOF) and there is trailing data after the certificate is parsed, a * than EOF) and there is trailing data after the certificate is parsed, a
* <code>CertificateException</code> is thrown. * {@code CertificateException} is thrown.
* *
* @param inStream an input stream with the certificate data. * @param inStream an input stream with the certificate data.
* *
...@@ -340,19 +340,19 @@ public class CertificateFactory { ...@@ -340,19 +340,19 @@ public class CertificateFactory {
} }
/** /**
* Returns an iteration of the <code>CertPath</code> encodings supported * Returns an iteration of the {@code CertPath} encodings supported
* by this certificate factory, with the default encoding first. See * by this certificate factory, with the default encoding first. See
* the CertPath Encodings section in the <a href= * the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard encoding names and their formats. * for information about standard encoding names and their formats.
* <p> * <p>
* Attempts to modify the returned <code>Iterator</code> via its * Attempts to modify the returned {@code Iterator} via its
* <code>remove</code> method result in an * {@code remove} method result in an
* <code>UnsupportedOperationException</code>. * {@code UnsupportedOperationException}.
* *
* @return an <code>Iterator</code> over the names of the supported * @return an {@code Iterator} over the names of the supported
* <code>CertPath</code> encodings (as <code>String</code>s) * {@code CertPath} encodings (as {@code String}s)
* @since 1.4 * @since 1.4
*/ */
public final Iterator<String> getCertPathEncodings() { public final Iterator<String> getCertPathEncodings() {
...@@ -360,15 +360,15 @@ public class CertificateFactory { ...@@ -360,15 +360,15 @@ public class CertificateFactory {
} }
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* the data read from the <code>InputStream</code> inStream. The data * the data read from the {@code InputStream} inStream. The data
* is assumed to be in the default encoding. The name of the default * is assumed to be in the default encoding. The name of the default
* encoding is the first element of the <code>Iterator</code> returned by * encoding is the first element of the {@code Iterator} returned by
* the {@link #getCertPathEncodings getCertPathEncodings} method. * the {@link #getCertPathEncodings getCertPathEncodings} method.
* *
* @param inStream an <code>InputStream</code> containing the data * @param inStream an {@code InputStream} containing the data
* @return a <code>CertPath</code> initialized with the data from the * @return a {@code CertPath} initialized with the data from the
* <code>InputStream</code> * {@code InputStream}
* @exception CertificateException if an exception occurs while decoding * @exception CertificateException if an exception occurs while decoding
* @since 1.4 * @since 1.4
*/ */
...@@ -379,18 +379,18 @@ public class CertificateFactory { ...@@ -379,18 +379,18 @@ public class CertificateFactory {
} }
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* the data read from the <code>InputStream</code> inStream. The data * the data read from the {@code InputStream} inStream. The data
* is assumed to be in the specified encoding. See * is assumed to be in the specified encoding. See
* the CertPath Encodings section in the <a href= * the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard encoding names and their formats. * for information about standard encoding names and their formats.
* *
* @param inStream an <code>InputStream</code> containing the data * @param inStream an {@code InputStream} containing the data
* @param encoding the encoding used for the data * @param encoding the encoding used for the data
* @return a <code>CertPath</code> initialized with the data from the * @return a {@code CertPath} initialized with the data from the
* <code>InputStream</code> * {@code InputStream}
* @exception CertificateException if an exception occurs while decoding or * @exception CertificateException if an exception occurs while decoding or
* the encoding requested is not supported * the encoding requested is not supported
* @since 1.4 * @since 1.4
...@@ -402,15 +402,15 @@ public class CertificateFactory { ...@@ -402,15 +402,15 @@ public class CertificateFactory {
} }
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* a <code>List</code> of <code>Certificate</code>s. * a {@code List} of {@code Certificate}s.
* <p> * <p>
* The certificates supplied must be of a type supported by the * The certificates supplied must be of a type supported by the
* <code>CertificateFactory</code>. They will be copied out of the supplied * {@code CertificateFactory}. They will be copied out of the supplied
* <code>List</code> object. * {@code List} object.
* *
* @param certificates a <code>List</code> of <code>Certificate</code>s * @param certificates a {@code List} of {@code Certificate}s
* @return a <code>CertPath</code> initialized with the supplied list of * @return a {@code CertPath} initialized with the supplied list of
* certificates * certificates
* @exception CertificateException if an exception occurs * @exception CertificateException if an exception occurs
* @since 1.4 * @since 1.4
...@@ -424,20 +424,20 @@ public class CertificateFactory { ...@@ -424,20 +424,20 @@ public class CertificateFactory {
/** /**
* Returns a (possibly empty) collection view of the certificates read * Returns a (possibly empty) collection view of the certificates read
* from the given input stream <code>inStream</code>. * from the given input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized certificate format * <p>In order to take advantage of the specialized certificate format
* supported by this certificate factory, each element in * supported by this certificate factory, each element in
* the returned collection view can be typecast to the corresponding * the returned collection view can be typecast to the corresponding
* certificate class. For example, if this certificate * certificate class. For example, if this certificate
* factory implements X.509 certificates, the elements in the returned * factory implements X.509 certificates, the elements in the returned
* collection can be typecast to the <code>X509Certificate</code> class. * collection can be typecast to the {@code X509Certificate} class.
* *
* <p>In the case of a certificate factory for X.509 certificates, * <p>In the case of a certificate factory for X.509 certificates,
* <code>inStream</code> may contain a sequence of DER-encoded certificates * {@code inStream} may contain a sequence of DER-encoded certificates
* in the formats described for * in the formats described for
* {@link #generateCertificate(java.io.InputStream) generateCertificate}. * {@link #generateCertificate(java.io.InputStream) generateCertificate}.
* In addition, <code>inStream</code> may contain a PKCS#7 certificate * In addition, {@code inStream} may contain a PKCS#7 certificate
* chain. This is a PKCS#7 <i>SignedData</i> object, with the only * chain. This is a PKCS#7 <i>SignedData</i> object, with the only
* significant field being <i>certificates</i>. In particular, the * significant field being <i>certificates</i>. In particular, the
* signature and the contents are ignored. This format allows multiple * signature and the contents are ignored. This format allows multiple
...@@ -464,14 +464,14 @@ public class CertificateFactory { ...@@ -464,14 +464,14 @@ public class CertificateFactory {
/** /**
* Generates a certificate revocation list (CRL) object and initializes it * Generates a certificate revocation list (CRL) object and initializes it
* with the data read from the input stream <code>inStream</code>. * with the data read from the input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized CRL format * <p>In order to take advantage of the specialized CRL format
* supported by this certificate factory, * supported by this certificate factory,
* the returned CRL object can be typecast to the corresponding * the returned CRL object can be typecast to the corresponding
* CRL class. For example, if this certificate * CRL class. For example, if this certificate
* factory implements X.509 CRLs, the returned CRL object * factory implements X.509 CRLs, the returned CRL object
* can be typecast to the <code>X509CRL</code> class. * can be typecast to the {@code X509CRL} class.
* *
* <p>Note that if the given input stream does not support * <p>Note that if the given input stream does not support
* {@link java.io.InputStream#mark(int) mark} and * {@link java.io.InputStream#mark(int) mark} and
...@@ -482,7 +482,7 @@ public class CertificateFactory { ...@@ -482,7 +482,7 @@ public class CertificateFactory {
* end-of-CRL marker. If the data in the * end-of-CRL marker. If the data in the
* input stream does not contain an inherent end-of-CRL marker (other * input stream does not contain an inherent end-of-CRL marker (other
* than EOF) and there is trailing data after the CRL is parsed, a * than EOF) and there is trailing data after the CRL is parsed, a
* <code>CRLException</code> is thrown. * {@code CRLException} is thrown.
* *
* @param inStream an input stream with the CRL data. * @param inStream an input stream with the CRL data.
* *
...@@ -499,18 +499,18 @@ public class CertificateFactory { ...@@ -499,18 +499,18 @@ public class CertificateFactory {
/** /**
* Returns a (possibly empty) collection view of the CRLs read * Returns a (possibly empty) collection view of the CRLs read
* from the given input stream <code>inStream</code>. * from the given input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized CRL format * <p>In order to take advantage of the specialized CRL format
* supported by this certificate factory, each element in * supported by this certificate factory, each element in
* the returned collection view can be typecast to the corresponding * the returned collection view can be typecast to the corresponding
* CRL class. For example, if this certificate * CRL class. For example, if this certificate
* factory implements X.509 CRLs, the elements in the returned * factory implements X.509 CRLs, the elements in the returned
* collection can be typecast to the <code>X509CRL</code> class. * collection can be typecast to the {@code X509CRL} class.
* *
* <p>In the case of a certificate factory for X.509 CRLs, * <p>In the case of a certificate factory for X.509 CRLs,
* <code>inStream</code> may contain a sequence of DER-encoded CRLs. * {@code inStream} may contain a sequence of DER-encoded CRLs.
* In addition, <code>inStream</code> may contain a PKCS#7 CRL * In addition, {@code inStream} may contain a PKCS#7 CRL
* set. This is a PKCS#7 <i>SignedData</i> object, with the only * set. This is a PKCS#7 <i>SignedData</i> object, with the only
* significant field being <i>crls</i>. In particular, the * significant field being <i>crls</i>. In particular, the
* signature and the contents are ignored. This format allows multiple * signature and the contents are ignored. This format allows multiple
......
/* /*
* Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -35,18 +35,18 @@ import java.security.NoSuchProviderException; ...@@ -35,18 +35,18 @@ import java.security.NoSuchProviderException;
/** /**
* This class defines the <i>Service Provider Interface</i> (<b>SPI</b>) * This class defines the <i>Service Provider Interface</i> (<b>SPI</b>)
* for the <code>CertificateFactory</code> class. * for the {@code CertificateFactory} class.
* All the abstract methods in this class must be implemented by each * All the abstract methods in this class must be implemented by each
* cryptographic service provider who wishes to supply the implementation * cryptographic service provider who wishes to supply the implementation
* of a certificate factory for a particular certificate type, e.g., X.509. * of a certificate factory for a particular certificate type, e.g., X.509.
* *
* <p>Certificate factories are used to generate certificate, certification path * <p>Certificate factories are used to generate certificate, certification path
* (<code>CertPath</code>) and certificate revocation list (CRL) objects from * ({@code CertPath}) and certificate revocation list (CRL) objects from
* their encodings. * their encodings.
* *
* <p>A certificate factory for X.509 must return certificates that are an * <p>A certificate factory for X.509 must return certificates that are an
* instance of <code>java.security.cert.X509Certificate</code>, and CRLs * instance of {@code java.security.cert.X509Certificate}, and CRLs
* that are an instance of <code>java.security.cert.X509CRL</code>. * that are an instance of {@code java.security.cert.X509CRL}.
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
* @author Jan Luehe * @author Jan Luehe
...@@ -67,17 +67,17 @@ public abstract class CertificateFactorySpi { ...@@ -67,17 +67,17 @@ public abstract class CertificateFactorySpi {
/** /**
* Generates a certificate object and initializes it with * Generates a certificate object and initializes it with
* the data read from the input stream <code>inStream</code>. * the data read from the input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized certificate format * <p>In order to take advantage of the specialized certificate format
* supported by this certificate factory, * supported by this certificate factory,
* the returned certificate object can be typecast to the corresponding * the returned certificate object can be typecast to the corresponding
* certificate class. For example, if this certificate * certificate class. For example, if this certificate
* factory implements X.509 certificates, the returned certificate object * factory implements X.509 certificates, the returned certificate object
* can be typecast to the <code>X509Certificate</code> class. * can be typecast to the {@code X509Certificate} class.
* *
* <p>In the case of a certificate factory for X.509 certificates, the * <p>In the case of a certificate factory for X.509 certificates, the
* certificate provided in <code>inStream</code> must be DER-encoded and * certificate provided in {@code inStream} must be DER-encoded and
* may be supplied in binary or printable (Base64) encoding. If the * may be supplied in binary or printable (Base64) encoding. If the
* certificate is provided in Base64 encoding, it must be bounded at * certificate is provided in Base64 encoding, it must be bounded at
* the beginning by -----BEGIN CERTIFICATE-----, and must be bounded at * the beginning by -----BEGIN CERTIFICATE-----, and must be bounded at
...@@ -92,7 +92,7 @@ public abstract class CertificateFactorySpi { ...@@ -92,7 +92,7 @@ public abstract class CertificateFactorySpi {
* end-of-certificate marker. If the data in the * end-of-certificate marker. If the data in the
* input stream does not contain an inherent end-of-certificate marker (other * input stream does not contain an inherent end-of-certificate marker (other
* than EOF) and there is trailing data after the certificate is parsed, a * than EOF) and there is trailing data after the certificate is parsed, a
* <code>CertificateException</code> is thrown. * {@code CertificateException} is thrown.
* *
* @param inStream an input stream with the certificate data. * @param inStream an input stream with the certificate data.
* *
...@@ -105,18 +105,18 @@ public abstract class CertificateFactorySpi { ...@@ -105,18 +105,18 @@ public abstract class CertificateFactorySpi {
throws CertificateException; throws CertificateException;
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* the data read from the <code>InputStream</code> inStream. The data * the data read from the {@code InputStream} inStream. The data
* is assumed to be in the default encoding. * is assumed to be in the default encoding.
* *
* <p> This method was added to version 1.4 of the Java 2 Platform * <p> This method was added to version 1.4 of the Java 2 Platform
* Standard Edition. In order to maintain backwards compatibility with * Standard Edition. In order to maintain backwards compatibility with
* existing service providers, this method cannot be <code>abstract</code> * existing service providers, this method cannot be {@code abstract}
* and by default throws an <code>UnsupportedOperationException</code>. * and by default throws an {@code UnsupportedOperationException}.
* *
* @param inStream an <code>InputStream</code> containing the data * @param inStream an {@code InputStream} containing the data
* @return a <code>CertPath</code> initialized with the data from the * @return a {@code CertPath} initialized with the data from the
* <code>InputStream</code> * {@code InputStream}
* @exception CertificateException if an exception occurs while decoding * @exception CertificateException if an exception occurs while decoding
* @exception UnsupportedOperationException if the method is not supported * @exception UnsupportedOperationException if the method is not supported
* @since 1.4 * @since 1.4
...@@ -128,19 +128,19 @@ public abstract class CertificateFactorySpi { ...@@ -128,19 +128,19 @@ public abstract class CertificateFactorySpi {
} }
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* the data read from the <code>InputStream</code> inStream. The data * the data read from the {@code InputStream} inStream. The data
* is assumed to be in the specified encoding. * is assumed to be in the specified encoding.
* *
* <p> This method was added to version 1.4 of the Java 2 Platform * <p> This method was added to version 1.4 of the Java 2 Platform
* Standard Edition. In order to maintain backwards compatibility with * Standard Edition. In order to maintain backwards compatibility with
* existing service providers, this method cannot be <code>abstract</code> * existing service providers, this method cannot be {@code abstract}
* and by default throws an <code>UnsupportedOperationException</code>. * and by default throws an {@code UnsupportedOperationException}.
* *
* @param inStream an <code>InputStream</code> containing the data * @param inStream an {@code InputStream} containing the data
* @param encoding the encoding used for the data * @param encoding the encoding used for the data
* @return a <code>CertPath</code> initialized with the data from the * @return a {@code CertPath} initialized with the data from the
* <code>InputStream</code> * {@code InputStream}
* @exception CertificateException if an exception occurs while decoding or * @exception CertificateException if an exception occurs while decoding or
* the encoding requested is not supported * the encoding requested is not supported
* @exception UnsupportedOperationException if the method is not supported * @exception UnsupportedOperationException if the method is not supported
...@@ -153,20 +153,20 @@ public abstract class CertificateFactorySpi { ...@@ -153,20 +153,20 @@ public abstract class CertificateFactorySpi {
} }
/** /**
* Generates a <code>CertPath</code> object and initializes it with * Generates a {@code CertPath} object and initializes it with
* a <code>List</code> of <code>Certificate</code>s. * a {@code List} of {@code Certificate}s.
* <p> * <p>
* The certificates supplied must be of a type supported by the * The certificates supplied must be of a type supported by the
* <code>CertificateFactory</code>. They will be copied out of the supplied * {@code CertificateFactory}. They will be copied out of the supplied
* <code>List</code> object. * {@code List} object.
* *
* <p> This method was added to version 1.4 of the Java 2 Platform * <p> This method was added to version 1.4 of the Java 2 Platform
* Standard Edition. In order to maintain backwards compatibility with * Standard Edition. In order to maintain backwards compatibility with
* existing service providers, this method cannot be <code>abstract</code> * existing service providers, this method cannot be {@code abstract}
* and by default throws an <code>UnsupportedOperationException</code>. * and by default throws an {@code UnsupportedOperationException}.
* *
* @param certificates a <code>List</code> of <code>Certificate</code>s * @param certificates a {@code List} of {@code Certificate}s
* @return a <code>CertPath</code> initialized with the supplied list of * @return a {@code CertPath} initialized with the supplied list of
* certificates * certificates
* @exception CertificateException if an exception occurs * @exception CertificateException if an exception occurs
* @exception UnsupportedOperationException if the method is not supported * @exception UnsupportedOperationException if the method is not supported
...@@ -180,24 +180,24 @@ public abstract class CertificateFactorySpi { ...@@ -180,24 +180,24 @@ public abstract class CertificateFactorySpi {
} }
/** /**
* Returns an iteration of the <code>CertPath</code> encodings supported * Returns an iteration of the {@code CertPath} encodings supported
* by this certificate factory, with the default encoding first. See * by this certificate factory, with the default encoding first. See
* the CertPath Encodings section in the <a href= * the CertPath Encodings section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#CertPathEncodings">
* Java Cryptography Architecture Standard Algorithm Name Documentation</a> * Java Cryptography Architecture Standard Algorithm Name Documentation</a>
* for information about standard encoding names. * for information about standard encoding names.
* <p> * <p>
* Attempts to modify the returned <code>Iterator</code> via its * Attempts to modify the returned {@code Iterator} via its
* <code>remove</code> method result in an * {@code remove} method result in an
* <code>UnsupportedOperationException</code>. * {@code UnsupportedOperationException}.
* *
* <p> This method was added to version 1.4 of the Java 2 Platform * <p> This method was added to version 1.4 of the Java 2 Platform
* Standard Edition. In order to maintain backwards compatibility with * Standard Edition. In order to maintain backwards compatibility with
* existing service providers, this method cannot be <code>abstract</code> * existing service providers, this method cannot be {@code abstract}
* and by default throws an <code>UnsupportedOperationException</code>. * and by default throws an {@code UnsupportedOperationException}.
* *
* @return an <code>Iterator</code> over the names of the supported * @return an {@code Iterator} over the names of the supported
* <code>CertPath</code> encodings (as <code>String</code>s) * {@code CertPath} encodings (as {@code String}s)
* @exception UnsupportedOperationException if the method is not supported * @exception UnsupportedOperationException if the method is not supported
* @since 1.4 * @since 1.4
*/ */
...@@ -207,21 +207,21 @@ public abstract class CertificateFactorySpi { ...@@ -207,21 +207,21 @@ public abstract class CertificateFactorySpi {
/** /**
* Returns a (possibly empty) collection view of the certificates read * Returns a (possibly empty) collection view of the certificates read
* from the given input stream <code>inStream</code>. * from the given input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized certificate format * <p>In order to take advantage of the specialized certificate format
* supported by this certificate factory, each element in * supported by this certificate factory, each element in
* the returned collection view can be typecast to the corresponding * the returned collection view can be typecast to the corresponding
* certificate class. For example, if this certificate * certificate class. For example, if this certificate
* factory implements X.509 certificates, the elements in the returned * factory implements X.509 certificates, the elements in the returned
* collection can be typecast to the <code>X509Certificate</code> class. * collection can be typecast to the {@code X509Certificate} class.
* *
* <p>In the case of a certificate factory for X.509 certificates, * <p>In the case of a certificate factory for X.509 certificates,
* <code>inStream</code> may contain a single DER-encoded certificate * {@code inStream} may contain a single DER-encoded certificate
* in the formats described for * in the formats described for
* {@link CertificateFactory#generateCertificate(java.io.InputStream) * {@link CertificateFactory#generateCertificate(java.io.InputStream)
* generateCertificate}. * generateCertificate}.
* In addition, <code>inStream</code> may contain a PKCS#7 certificate * In addition, {@code inStream} may contain a PKCS#7 certificate
* chain. This is a PKCS#7 <i>SignedData</i> object, with the only * chain. This is a PKCS#7 <i>SignedData</i> object, with the only
* significant field being <i>certificates</i>. In particular, the * significant field being <i>certificates</i>. In particular, the
* signature and the contents are ignored. This format allows multiple * signature and the contents are ignored. This format allows multiple
...@@ -247,14 +247,14 @@ public abstract class CertificateFactorySpi { ...@@ -247,14 +247,14 @@ public abstract class CertificateFactorySpi {
/** /**
* Generates a certificate revocation list (CRL) object and initializes it * Generates a certificate revocation list (CRL) object and initializes it
* with the data read from the input stream <code>inStream</code>. * with the data read from the input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized CRL format * <p>In order to take advantage of the specialized CRL format
* supported by this certificate factory, * supported by this certificate factory,
* the returned CRL object can be typecast to the corresponding * the returned CRL object can be typecast to the corresponding
* CRL class. For example, if this certificate * CRL class. For example, if this certificate
* factory implements X.509 CRLs, the returned CRL object * factory implements X.509 CRLs, the returned CRL object
* can be typecast to the <code>X509CRL</code> class. * can be typecast to the {@code X509CRL} class.
* *
* <p>Note that if the given input stream does not support * <p>Note that if the given input stream does not support
* {@link java.io.InputStream#mark(int) mark} and * {@link java.io.InputStream#mark(int) mark} and
...@@ -265,7 +265,7 @@ public abstract class CertificateFactorySpi { ...@@ -265,7 +265,7 @@ public abstract class CertificateFactorySpi {
* end-of-CRL marker. If the data in the * end-of-CRL marker. If the data in the
* input stream does not contain an inherent end-of-CRL marker (other * input stream does not contain an inherent end-of-CRL marker (other
* than EOF) and there is trailing data after the CRL is parsed, a * than EOF) and there is trailing data after the CRL is parsed, a
* <code>CRLException</code> is thrown. * {@code CRLException} is thrown.
* *
* @param inStream an input stream with the CRL data. * @param inStream an input stream with the CRL data.
* *
...@@ -279,18 +279,18 @@ public abstract class CertificateFactorySpi { ...@@ -279,18 +279,18 @@ public abstract class CertificateFactorySpi {
/** /**
* Returns a (possibly empty) collection view of the CRLs read * Returns a (possibly empty) collection view of the CRLs read
* from the given input stream <code>inStream</code>. * from the given input stream {@code inStream}.
* *
* <p>In order to take advantage of the specialized CRL format * <p>In order to take advantage of the specialized CRL format
* supported by this certificate factory, each element in * supported by this certificate factory, each element in
* the returned collection view can be typecast to the corresponding * the returned collection view can be typecast to the corresponding
* CRL class. For example, if this certificate * CRL class. For example, if this certificate
* factory implements X.509 CRLs, the elements in the returned * factory implements X.509 CRLs, the elements in the returned
* collection can be typecast to the <code>X509CRL</code> class. * collection can be typecast to the {@code X509CRL} class.
* *
* <p>In the case of a certificate factory for X.509 CRLs, * <p>In the case of a certificate factory for X.509 CRLs,
* <code>inStream</code> may contain a single DER-encoded CRL. * {@code inStream} may contain a single DER-encoded CRL.
* In addition, <code>inStream</code> may contain a PKCS#7 CRL * In addition, {@code inStream} may contain a PKCS#7 CRL
* set. This is a PKCS#7 <i>SignedData</i> object, with the only * set. This is a PKCS#7 <i>SignedData</i> object, with the only
* significant field being <i>crls</i>. In particular, the * significant field being <i>crls</i>. In particular, the
* signature and the contents are ignored. This format allows multiple * signature and the contents are ignored. This format allows multiple
......
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package java.security.cert; ...@@ -27,8 +27,8 @@ package java.security.cert;
/** /**
* Certificate is not yet valid exception. This is thrown whenever * Certificate is not yet valid exception. This is thrown whenever
* the current <code>Date</code> or the specified <code>Date</code> * the current {@code Date} or the specified {@code Date}
* is before the <code>notBefore</code> date/time in the Certificate * is before the {@code notBefore} date/time in the Certificate
* validity period. * validity period.
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -57,13 +57,13 @@ public class CertificateParsingException extends CertificateException { ...@@ -57,13 +57,13 @@ public class CertificateParsingException extends CertificateException {
} }
/** /**
* Creates a <code>CertificateParsingException</code> with the specified * Creates a {@code CertificateParsingException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -72,14 +72,14 @@ public class CertificateParsingException extends CertificateException { ...@@ -72,14 +72,14 @@ public class CertificateParsingException extends CertificateException {
} }
/** /**
* Creates a <code>CertificateParsingException</code> with the * Creates a {@code CertificateParsingException} with the
* specified cause and a detail message of * specified cause and a detail message of
* <tt>(cause==null ? null : cause.toString())</tt> * {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -39,7 +39,7 @@ import sun.security.x509.InvalidityDateExtension; ...@@ -39,7 +39,7 @@ import sun.security.x509.InvalidityDateExtension;
/** /**
* An exception that indicates an X.509 certificate is revoked. A * An exception that indicates an X.509 certificate is revoked. A
* <code>CertificateRevokedException</code> contains additional information * {@code CertificateRevokedException} contains additional information
* about the revoked certificate, such as the date on which the * about the revoked certificate, such as the date on which the
* certificate was revoked and the reason it was revoked. * certificate was revoked and the reason it was revoked.
* *
...@@ -60,7 +60,7 @@ public class CertificateRevokedException extends CertificateException { ...@@ -60,7 +60,7 @@ public class CertificateRevokedException extends CertificateException {
*/ */
private final CRLReason reason; private final CRLReason reason;
/** /**
* @serial the <code>X500Principal</code> that represents the name of the * @serial the {@code X500Principal} that represents the name of the
* authority that signed the certificate's revocation status information * authority that signed the certificate's revocation status information
*/ */
private final X500Principal authority; private final X500Principal authority;
...@@ -68,7 +68,7 @@ public class CertificateRevokedException extends CertificateException { ...@@ -68,7 +68,7 @@ public class CertificateRevokedException extends CertificateException {
private transient Map<String, Extension> extensions; private transient Map<String, Extension> extensions;
/** /**
* Constructs a <code>CertificateRevokedException</code> with * Constructs a {@code CertificateRevokedException} with
* the specified revocation date, reason code, authority name, and map * the specified revocation date, reason code, authority name, and map
* of extensions. * of extensions.
* *
...@@ -78,12 +78,12 @@ public class CertificateRevokedException extends CertificateException { ...@@ -78,12 +78,12 @@ public class CertificateRevokedException extends CertificateException {
* @param extensions a map of X.509 Extensions. Each key is an OID String * @param extensions a map of X.509 Extensions. Each key is an OID String
* that maps to the corresponding Extension. The map is copied to * that maps to the corresponding Extension. The map is copied to
* prevent subsequent modification. * prevent subsequent modification.
* @param authority the <code>X500Principal</code> that represents the name * @param authority the {@code X500Principal} that represents the name
* of the authority that signed the certificate's revocation status * of the authority that signed the certificate's revocation status
* information * information
* @throws NullPointerException if <code>revocationDate</code>, * @throws NullPointerException if {@code revocationDate},
* <code>reason</code>, <code>authority</code>, or * {@code reason}, {@code authority}, or
* <code>extensions</code> is <code>null</code> * {@code extensions} is {@code null}
*/ */
public CertificateRevokedException(Date revocationDate, CRLReason reason, public CertificateRevokedException(Date revocationDate, CRLReason reason,
X500Principal authority, Map<String, Extension> extensions) { X500Principal authority, Map<String, Extension> extensions) {
...@@ -121,7 +121,7 @@ public class CertificateRevokedException extends CertificateException { ...@@ -121,7 +121,7 @@ public class CertificateRevokedException extends CertificateException {
* Returns the name of the authority that signed the certificate's * Returns the name of the authority that signed the certificate's
* revocation status information. * revocation status information.
* *
* @return the <code>X500Principal</code> that represents the name of the * @return the {@code X500Principal} that represents the name of the
* authority that signed the certificate's revocation status information * authority that signed the certificate's revocation status information
*/ */
public X500Principal getAuthorityName() { public X500Principal getAuthorityName() {
...@@ -130,16 +130,16 @@ public class CertificateRevokedException extends CertificateException { ...@@ -130,16 +130,16 @@ public class CertificateRevokedException extends CertificateException {
/** /**
* Returns the invalidity date, as specifed in the Invalidity Date * Returns the invalidity date, as specifed in the Invalidity Date
* extension of this <code>CertificateRevokedException</code>. The * extension of this {@code CertificateRevokedException}. The
* invalidity date is the date on which it is known or suspected that the * invalidity date is the date on which it is known or suspected that the
* private key was compromised or that the certificate otherwise became * private key was compromised or that the certificate otherwise became
* invalid. This implementation calls <code>getExtensions()</code> and * invalid. This implementation calls {@code getExtensions()} and
* checks the returned map for an entry for the Invalidity Date extension * checks the returned map for an entry for the Invalidity Date extension
* OID ("2.5.29.24"). If found, it returns the invalidity date in the * OID ("2.5.29.24"). If found, it returns the invalidity date in the
* extension; otherwise null. A new Date object is returned each time the * extension; otherwise null. A new Date object is returned each time the
* method is invoked to protect against subsequent modification. * method is invoked to protect against subsequent modification.
* *
* @return the invalidity date, or <code>null</code> if not specified * @return the invalidity date, or {@code null} if not specified
*/ */
public Date getInvalidityDate() { public Date getInvalidityDate() {
Extension ext = getExtensions().get("2.5.29.24"); Extension ext = getExtensions().get("2.5.29.24");
...@@ -176,7 +176,7 @@ public class CertificateRevokedException extends CertificateException { ...@@ -176,7 +176,7 @@ public class CertificateRevokedException extends CertificateException {
} }
/** /**
* Serialize this <code>CertificateRevokedException</code> instance. * Serialize this {@code CertificateRevokedException} instance.
* *
* @serialData the size of the extensions map (int), followed by all of * @serialData the size of the extensions map (int), followed by all of
* the extensions in the map, in no particular order. For each extension, * the extensions in the map, in no particular order. For each extension,
...@@ -208,7 +208,7 @@ public class CertificateRevokedException extends CertificateException { ...@@ -208,7 +208,7 @@ public class CertificateRevokedException extends CertificateException {
} }
/** /**
* Deserialize the <code>CertificateRevokedException</code> instance. * Deserialize the {@code CertificateRevokedException} instance.
*/ */
private void readObject(ObjectInputStream ois) private void readObject(ObjectInputStream ois)
throws IOException, ClassNotFoundException { throws IOException, ClassNotFoundException {
......
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,13 +30,13 @@ import java.util.Collection; ...@@ -30,13 +30,13 @@ import java.util.Collection;
import java.util.Collections; import java.util.Collections;
/** /**
* Parameters used as input for the Collection <code>CertStore</code> * Parameters used as input for the Collection {@code CertStore}
* algorithm. * algorithm.
* <p> * <p>
* This class is used to provide necessary configuration parameters * This class is used to provide necessary configuration parameters
* to implementations of the Collection <code>CertStore</code> * to implementations of the Collection {@code CertStore}
* algorithm. The only parameter included in this class is the * algorithm. The only parameter included in this class is the
* <code>Collection</code> from which the <code>CertStore</code> will * {@code Collection} from which the {@code CertStore} will
* retrieve certificates and CRLs. * retrieve certificates and CRLs.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
...@@ -58,30 +58,30 @@ public class CollectionCertStoreParameters ...@@ -58,30 +58,30 @@ public class CollectionCertStoreParameters
private Collection<?> coll; private Collection<?> coll;
/** /**
* Creates an instance of <code>CollectionCertStoreParameters</code> * Creates an instance of {@code CollectionCertStoreParameters}
* which will allow certificates and CRLs to be retrieved from the * which will allow certificates and CRLs to be retrieved from the
* specified <code>Collection</code>. If the specified * specified {@code Collection}. If the specified
* <code>Collection</code> contains an object that is not a * {@code Collection} contains an object that is not a
* <code>Certificate</code> or <code>CRL</code>, that object will be * {@code Certificate} or {@code CRL}, that object will be
* ignored by the Collection <code>CertStore</code>. * ignored by the Collection {@code CertStore}.
* <p> * <p>
* The <code>Collection</code> is <b>not</b> copied. Instead, a * The {@code Collection} is <b>not</b> copied. Instead, a
* reference is used. This allows the caller to subsequently add or * reference is used. This allows the caller to subsequently add or
* remove <code>Certificates</code> or <code>CRL</code>s from the * remove {@code Certificates} or {@code CRL}s from the
* <code>Collection</code>, thus changing the set of * {@code Collection}, thus changing the set of
* <code>Certificates</code> or <code>CRL</code>s available to the * {@code Certificates} or {@code CRL}s available to the
* Collection <code>CertStore</code>. The Collection <code>CertStore</code> * Collection {@code CertStore}. The Collection {@code CertStore}
* will not modify the contents of the <code>Collection</code>. * will not modify the contents of the {@code Collection}.
* <p> * <p>
* If the <code>Collection</code> will be modified by one thread while * If the {@code Collection} will be modified by one thread while
* another thread is calling a method of a Collection <code>CertStore</code> * another thread is calling a method of a Collection {@code CertStore}
* that has been initialized with this <code>Collection</code>, the * that has been initialized with this {@code Collection}, the
* <code>Collection</code> must have fail-fast iterators. * {@code Collection} must have fail-fast iterators.
* *
* @param collection a <code>Collection</code> of * @param collection a {@code Collection} of
* <code>Certificate</code>s and <code>CRL</code>s * {@code Certificate}s and {@code CRL}s
* @exception NullPointerException if <code>collection</code> is * @exception NullPointerException if {@code collection} is
* <code>null</code> * {@code null}
*/ */
public CollectionCertStoreParameters(Collection<?> collection) { public CollectionCertStoreParameters(Collection<?> collection) {
if (collection == null) if (collection == null)
...@@ -90,22 +90,22 @@ public class CollectionCertStoreParameters ...@@ -90,22 +90,22 @@ public class CollectionCertStoreParameters
} }
/** /**
* Creates an instance of <code>CollectionCertStoreParameters</code> with * Creates an instance of {@code CollectionCertStoreParameters} with
* the default parameter values (an empty and immutable * the default parameter values (an empty and immutable
* <code>Collection</code>). * {@code Collection}).
*/ */
public CollectionCertStoreParameters() { public CollectionCertStoreParameters() {
coll = Collections.EMPTY_SET; coll = Collections.EMPTY_SET;
} }
/** /**
* Returns the <code>Collection</code> from which <code>Certificate</code>s * Returns the {@code Collection} from which {@code Certificate}s
* and <code>CRL</code>s are retrieved. This is <b>not</b> a copy of the * and {@code CRL}s are retrieved. This is <b>not</b> a copy of the
* <code>Collection</code>, it is a reference. This allows the caller to * {@code Collection}, it is a reference. This allows the caller to
* subsequently add or remove <code>Certificates</code> or * subsequently add or remove {@code Certificates} or
* <code>CRL</code>s from the <code>Collection</code>. * {@code CRL}s from the {@code Collection}.
* *
* @return the <code>Collection</code> (never null) * @return the {@code Collection} (never null)
*/ */
public Collection<?> getCollection() { public Collection<?> getCollection() {
return coll; return coll;
...@@ -113,7 +113,7 @@ public class CollectionCertStoreParameters ...@@ -113,7 +113,7 @@ public class CollectionCertStoreParameters
/** /**
* Returns a copy of this object. Note that only a reference to the * Returns a copy of this object. Note that only a reference to the
* <code>Collection</code> is copied, and not the contents. * {@code Collection} is copied, and not the contents.
* *
* @return the copy * @return the copy
*/ */
......
/* /*
* Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -84,7 +84,7 @@ public interface Extension { ...@@ -84,7 +84,7 @@ public interface Extension {
* that are encoded as an OCTET STRING. It does not include the OCTET * that are encoded as an OCTET STRING. It does not include the OCTET
* STRING tag and length. * STRING tag and length.
* *
* @return a copy of the extension's value, or <code>null</code> if no * @return a copy of the extension's value, or {@code null} if no
* extension value is present. * extension value is present.
*/ */
byte[] getValue(); byte[] getValue();
...@@ -95,7 +95,7 @@ public interface Extension { ...@@ -95,7 +95,7 @@ public interface Extension {
* *
* @param out the output stream * @param out the output stream
* @exception IOException on encoding or output error. * @exception IOException on encoding or output error.
* @exception NullPointerException if <code>out</code> is <code>null</code>. * @exception NullPointerException if {@code out} is {@code null}.
*/ */
void encode(OutputStream out) throws IOException; void encode(OutputStream out) throws IOException;
} }
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,10 +26,10 @@ ...@@ -26,10 +26,10 @@
package java.security.cert; package java.security.cert;
/** /**
* Parameters used as input for the LDAP <code>CertStore</code> algorithm. * Parameters used as input for the LDAP {@code CertStore} algorithm.
* <p> * <p>
* This class is used to provide necessary configuration parameters (server * This class is used to provide necessary configuration parameters (server
* name and port number) to implementations of the LDAP <code>CertStore</code> * name and port number) to implementations of the LDAP {@code CertStore}
* algorithm. * algorithm.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
...@@ -59,13 +59,13 @@ public class LDAPCertStoreParameters implements CertStoreParameters { ...@@ -59,13 +59,13 @@ public class LDAPCertStoreParameters implements CertStoreParameters {
private String serverName; private String serverName;
/** /**
* Creates an instance of <code>LDAPCertStoreParameters</code> with the * Creates an instance of {@code LDAPCertStoreParameters} with the
* specified parameter values. * specified parameter values.
* *
* @param serverName the DNS name of the LDAP server * @param serverName the DNS name of the LDAP server
* @param port the port number of the LDAP server * @param port the port number of the LDAP server
* @exception NullPointerException if <code>serverName</code> is * @exception NullPointerException if {@code serverName} is
* <code>null</code> * {@code null}
*/ */
public LDAPCertStoreParameters(String serverName, int port) { public LDAPCertStoreParameters(String serverName, int port) {
if (serverName == null) if (serverName == null)
...@@ -75,19 +75,19 @@ public class LDAPCertStoreParameters implements CertStoreParameters { ...@@ -75,19 +75,19 @@ public class LDAPCertStoreParameters implements CertStoreParameters {
} }
/** /**
* Creates an instance of <code>LDAPCertStoreParameters</code> with the * Creates an instance of {@code LDAPCertStoreParameters} with the
* specified server name and a default port of 389. * specified server name and a default port of 389.
* *
* @param serverName the DNS name of the LDAP server * @param serverName the DNS name of the LDAP server
* @exception NullPointerException if <code>serverName</code> is * @exception NullPointerException if {@code serverName} is
* <code>null</code> * {@code null}
*/ */
public LDAPCertStoreParameters(String serverName) { public LDAPCertStoreParameters(String serverName) {
this(serverName, LDAP_DEFAULT_PORT); this(serverName, LDAP_DEFAULT_PORT);
} }
/** /**
* Creates an instance of <code>LDAPCertStoreParameters</code> with the * Creates an instance of {@code LDAPCertStoreParameters} with the
* default parameter values (server name "localhost", port 389). * default parameter values (server name "localhost", port 389).
*/ */
public LDAPCertStoreParameters() { public LDAPCertStoreParameters() {
...@@ -97,7 +97,7 @@ public class LDAPCertStoreParameters implements CertStoreParameters { ...@@ -97,7 +97,7 @@ public class LDAPCertStoreParameters implements CertStoreParameters {
/** /**
* Returns the DNS name of the LDAP server. * Returns the DNS name of the LDAP server.
* *
* @return the name (not <code>null</code>) * @return the name (not {@code null})
*/ */
public String getServerName() { public String getServerName() {
return serverName; return serverName;
...@@ -117,7 +117,7 @@ public class LDAPCertStoreParameters implements CertStoreParameters { ...@@ -117,7 +117,7 @@ public class LDAPCertStoreParameters implements CertStoreParameters {
* the original and vice versa. * the original and vice versa.
* <p> * <p>
* Note: this method currently performs a shallow copy of the object * Note: this method currently performs a shallow copy of the object
* (simply calls <code>Object.clone()</code>). This may be changed in a * (simply calls {@code Object.clone()}). This may be changed in a
* future revision to perform a deep copy if new parameters are added * future revision to perform a deep copy if new parameters are added
* that should not be shared. * that should not be shared.
* *
......
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -32,35 +32,35 @@ import java.security.InvalidParameterException; ...@@ -32,35 +32,35 @@ import java.security.InvalidParameterException;
import java.util.Set; import java.util.Set;
/** /**
* Parameters used as input for the PKIX <code>CertPathBuilder</code> * Parameters used as input for the PKIX {@code CertPathBuilder}
* algorithm. * algorithm.
* <p> * <p>
* A PKIX <code>CertPathBuilder</code> uses these parameters to {@link * A PKIX {@code CertPathBuilder} uses these parameters to {@link
* CertPathBuilder#build build} a <code>CertPath</code> which has been * CertPathBuilder#build build} a {@code CertPath} which has been
* validated according to the PKIX certification path validation algorithm. * validated according to the PKIX certification path validation algorithm.
* *
* <p>To instantiate a <code>PKIXBuilderParameters</code> object, an * <p>To instantiate a {@code PKIXBuilderParameters} object, an
* application must specify one or more <i>most-trusted CAs</i> as defined by * application must specify one or more <i>most-trusted CAs</i> as defined by
* the PKIX certification path validation algorithm. The most-trusted CA * the PKIX certification path validation algorithm. The most-trusted CA
* can be specified using one of two constructors. An application * can be specified using one of two constructors. An application
* can call {@link #PKIXBuilderParameters(Set, CertSelector) * can call {@link #PKIXBuilderParameters(Set, CertSelector)
* PKIXBuilderParameters(Set, CertSelector)}, specifying a * PKIXBuilderParameters(Set, CertSelector)}, specifying a
* <code>Set</code> of <code>TrustAnchor</code> objects, each of which * {@code Set} of {@code TrustAnchor} objects, each of which
* identifies a most-trusted CA. Alternatively, an application can call * identifies a most-trusted CA. Alternatively, an application can call
* {@link #PKIXBuilderParameters(KeyStore, CertSelector) * {@link #PKIXBuilderParameters(KeyStore, CertSelector)
* PKIXBuilderParameters(KeyStore, CertSelector)}, specifying a * PKIXBuilderParameters(KeyStore, CertSelector)}, specifying a
* <code>KeyStore</code> instance containing trusted certificate entries, each * {@code KeyStore} instance containing trusted certificate entries, each
* of which will be considered as a most-trusted CA. * of which will be considered as a most-trusted CA.
* *
* <p>In addition, an application must specify constraints on the target * <p>In addition, an application must specify constraints on the target
* certificate that the <code>CertPathBuilder</code> will attempt * certificate that the {@code CertPathBuilder} will attempt
* to build a path to. The constraints are specified as a * to build a path to. The constraints are specified as a
* <code>CertSelector</code> object. These constraints should provide the * {@code CertSelector} object. These constraints should provide the
* <code>CertPathBuilder</code> with enough search criteria to find the target * {@code CertPathBuilder} with enough search criteria to find the target
* certificate. Minimal criteria for an <code>X509Certificate</code> usually * certificate. Minimal criteria for an {@code X509Certificate} usually
* include the subject name and/or one or more subject alternative names. * include the subject name and/or one or more subject alternative names.
* If enough criteria is not specified, the <code>CertPathBuilder</code> * If enough criteria is not specified, the {@code CertPathBuilder}
* may throw a <code>CertPathBuilderException</code>. * may throw a {@code CertPathBuilderException}.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
...@@ -80,23 +80,23 @@ public class PKIXBuilderParameters extends PKIXParameters { ...@@ -80,23 +80,23 @@ public class PKIXBuilderParameters extends PKIXParameters {
private int maxPathLength = 5; private int maxPathLength = 5;
/** /**
* Creates an instance of <code>PKIXBuilderParameters</code> with * Creates an instance of {@code PKIXBuilderParameters} with
* the specified <code>Set</code> of most-trusted CAs. * the specified {@code Set} of most-trusted CAs.
* Each element of the set is a {@link TrustAnchor TrustAnchor}. * Each element of the set is a {@link TrustAnchor TrustAnchor}.
* *
* <p>Note that the <code>Set</code> is copied to protect against * <p>Note that the {@code Set} is copied to protect against
* subsequent modifications. * subsequent modifications.
* *
* @param trustAnchors a <code>Set</code> of <code>TrustAnchor</code>s * @param trustAnchors a {@code Set} of {@code TrustAnchor}s
* @param targetConstraints a <code>CertSelector</code> specifying the * @param targetConstraints a {@code CertSelector} specifying the
* constraints on the target certificate * constraints on the target certificate
* @throws InvalidAlgorithmParameterException if <code>trustAnchors</code> * @throws InvalidAlgorithmParameterException if {@code trustAnchors}
* is empty <code>(trustAnchors.isEmpty() == true)</code> * is empty {@code (trustAnchors.isEmpty() == true)}
* @throws NullPointerException if <code>trustAnchors</code> is * @throws NullPointerException if {@code trustAnchors} is
* <code>null</code> * {@code null}
* @throws ClassCastException if any of the elements of * @throws ClassCastException if any of the elements of
* <code>trustAnchors</code> are not of type * {@code trustAnchors} are not of type
* <code>java.security.cert.TrustAnchor</code> * {@code java.security.cert.TrustAnchor}
*/ */
public PKIXBuilderParameters(Set<TrustAnchor> trustAnchors, CertSelector public PKIXBuilderParameters(Set<TrustAnchor> trustAnchors, CertSelector
targetConstraints) throws InvalidAlgorithmParameterException targetConstraints) throws InvalidAlgorithmParameterException
...@@ -106,22 +106,22 @@ public class PKIXBuilderParameters extends PKIXParameters { ...@@ -106,22 +106,22 @@ public class PKIXBuilderParameters extends PKIXParameters {
} }
/** /**
* Creates an instance of <code>PKIXBuilderParameters</code> that * Creates an instance of {@code PKIXBuilderParameters} that
* populates the set of most-trusted CAs from the trusted * populates the set of most-trusted CAs from the trusted
* certificate entries contained in the specified <code>KeyStore</code>. * certificate entries contained in the specified {@code KeyStore}.
* Only keystore entries that contain trusted <code>X509Certificate</code>s * Only keystore entries that contain trusted {@code X509Certificate}s
* are considered; all other certificate types are ignored. * are considered; all other certificate types are ignored.
* *
* @param keystore a <code>KeyStore</code> from which the set of * @param keystore a {@code KeyStore} from which the set of
* most-trusted CAs will be populated * most-trusted CAs will be populated
* @param targetConstraints a <code>CertSelector</code> specifying the * @param targetConstraints a {@code CertSelector} specifying the
* constraints on the target certificate * constraints on the target certificate
* @throws KeyStoreException if <code>keystore</code> has not been * @throws KeyStoreException if {@code keystore} has not been
* initialized * initialized
* @throws InvalidAlgorithmParameterException if <code>keystore</code> does * @throws InvalidAlgorithmParameterException if {@code keystore} does
* not contain at least one trusted certificate entry * not contain at least one trusted certificate entry
* @throws NullPointerException if <code>keystore</code> is * @throws NullPointerException if {@code keystore} is
* <code>null</code> * {@code null}
*/ */
public PKIXBuilderParameters(KeyStore keystore, public PKIXBuilderParameters(KeyStore keystore,
CertSelector targetConstraints) CertSelector targetConstraints)
...@@ -139,7 +139,7 @@ public class PKIXBuilderParameters extends PKIXParameters { ...@@ -139,7 +139,7 @@ public class PKIXBuilderParameters extends PKIXParameters {
* in a certification path is not an intermediate certificate, and is not * in a certification path is not an intermediate certificate, and is not
* included in this limit. Usually the last certificate is an end entity * included in this limit. Usually the last certificate is an end entity
* certificate, but it can be a CA certificate. A PKIX * certificate, but it can be a CA certificate. A PKIX
* <code>CertPathBuilder</code> instance must not build * {@code CertPathBuilder} instance must not build
* paths longer than the length specified. * paths longer than the length specified.
* *
* <p> A value of 0 implies that the path can only contain * <p> A value of 0 implies that the path can only contain
...@@ -149,14 +149,14 @@ public class PKIXBuilderParameters extends PKIXParameters { ...@@ -149,14 +149,14 @@ public class PKIXBuilderParameters extends PKIXParameters {
* Setting a value less than -1 will cause an exception to be thrown. * Setting a value less than -1 will cause an exception to be thrown.
* *
* <p> If any of the CA certificates contain the * <p> If any of the CA certificates contain the
* <code>BasicConstraintsExtension</code>, the value of the * {@code BasicConstraintsExtension}, the value of the
* <code>pathLenConstraint</code> field of the extension overrides * {@code pathLenConstraint} field of the extension overrides
* the maximum path length parameter whenever the result is a * the maximum path length parameter whenever the result is a
* certification path of smaller length. * certification path of smaller length.
* *
* @param maxPathLength the maximum number of non-self-issued intermediate * @param maxPathLength the maximum number of non-self-issued intermediate
* certificates that may exist in a certification path * certificates that may exist in a certification path
* @throws InvalidParameterException if <code>maxPathLength</code> is set * @throws InvalidParameterException if {@code maxPathLength} is set
* to a value less than -1 * to a value less than -1
* *
* @see #getMaxPathLength * @see #getMaxPathLength
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -33,14 +33,14 @@ import java.security.PublicKey; ...@@ -33,14 +33,14 @@ import java.security.PublicKey;
* returned using this algorithm are also validated according to the PKIX * returned using this algorithm are also validated according to the PKIX
* certification path validation algorithm. * certification path validation algorithm.
* *
* <p>Instances of <code>PKIXCertPathBuilderResult</code> are returned by * <p>Instances of {@code PKIXCertPathBuilderResult} are returned by
* the <code>build</code> method of <code>CertPathBuilder</code> * the {@code build} method of {@code CertPathBuilder}
* objects implementing the PKIX algorithm. * objects implementing the PKIX algorithm.
* *
* <p>All <code>PKIXCertPathBuilderResult</code> objects contain the * <p>All {@code PKIXCertPathBuilderResult} objects contain the
* certification path constructed by the build algorithm, the * certification path constructed by the build algorithm, the
* valid policy tree and subject public key resulting from the build * valid policy tree and subject public key resulting from the build
* algorithm, and a <code>TrustAnchor</code> describing the certification * algorithm, and a {@code TrustAnchor} describing the certification
* authority (CA) that served as a trust anchor for the certification path. * authority (CA) that served as a trust anchor for the certification path.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
...@@ -62,18 +62,18 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult ...@@ -62,18 +62,18 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult
private CertPath certPath; private CertPath certPath;
/** /**
* Creates an instance of <code>PKIXCertPathBuilderResult</code> * Creates an instance of {@code PKIXCertPathBuilderResult}
* containing the specified parameters. * containing the specified parameters.
* *
* @param certPath the validated <code>CertPath</code> * @param certPath the validated {@code CertPath}
* @param trustAnchor a <code>TrustAnchor</code> describing the CA that * @param trustAnchor a {@code TrustAnchor} describing the CA that
* served as a trust anchor for the certification path * served as a trust anchor for the certification path
* @param policyTree the immutable valid policy tree, or <code>null</code> * @param policyTree the immutable valid policy tree, or {@code null}
* if there are no valid policies * if there are no valid policies
* @param subjectPublicKey the public key of the subject * @param subjectPublicKey the public key of the subject
* @throws NullPointerException if the <code>certPath</code>, * @throws NullPointerException if the {@code certPath},
* <code>trustAnchor</code> or <code>subjectPublicKey</code> parameters * {@code trustAnchor} or {@code subjectPublicKey} parameters
* are <code>null</code> * are {@code null}
*/ */
public PKIXCertPathBuilderResult(CertPath certPath, public PKIXCertPathBuilderResult(CertPath certPath,
TrustAnchor trustAnchor, PolicyNode policyTree, TrustAnchor trustAnchor, PolicyNode policyTree,
...@@ -87,13 +87,13 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult ...@@ -87,13 +87,13 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult
/** /**
* Returns the built and validated certification path. The * Returns the built and validated certification path. The
* <code>CertPath</code> object does not include the trust anchor. * {@code CertPath} object does not include the trust anchor.
* Instead, use the {@link #getTrustAnchor() getTrustAnchor()} method to * Instead, use the {@link #getTrustAnchor() getTrustAnchor()} method to
* obtain the <code>TrustAnchor</code> that served as the trust anchor * obtain the {@code TrustAnchor} that served as the trust anchor
* for the certification path. * for the certification path.
* *
* @return the built and validated <code>CertPath</code> (never * @return the built and validated {@code CertPath} (never
* <code>null</code>) * {@code null})
*/ */
public CertPath getCertPath() { public CertPath getCertPath() {
return certPath; return certPath;
...@@ -101,10 +101,10 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult ...@@ -101,10 +101,10 @@ public class PKIXCertPathBuilderResult extends PKIXCertPathValidatorResult
/** /**
* Return a printable representation of this * Return a printable representation of this
* <code>PKIXCertPathBuilderResult</code>. * {@code PKIXCertPathBuilderResult}.
* *
* @return a <code>String</code> describing the contents of this * @return a {@code String} describing the contents of this
* <code>PKIXCertPathBuilderResult</code> * {@code PKIXCertPathBuilderResult}
*/ */
public String toString() { public String toString() {
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
......
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,38 +30,38 @@ import java.util.Set; ...@@ -30,38 +30,38 @@ import java.util.Set;
/** /**
* An abstract class that performs one or more checks on an * An abstract class that performs one or more checks on an
* <code>X509Certificate</code>. * {@code X509Certificate}.
* *
* <p>A concrete implementation of the <code>PKIXCertPathChecker</code> class * <p>A concrete implementation of the {@code PKIXCertPathChecker} class
* can be created to extend the PKIX certification path validation algorithm. * can be created to extend the PKIX certification path validation algorithm.
* For example, an implementation may check for and process a critical private * For example, an implementation may check for and process a critical private
* extension of each certificate in a certification path. * extension of each certificate in a certification path.
* *
* <p>Instances of <code>PKIXCertPathChecker</code> are passed as parameters * <p>Instances of {@code PKIXCertPathChecker} are passed as parameters
* using the {@link PKIXParameters#setCertPathCheckers setCertPathCheckers} * using the {@link PKIXParameters#setCertPathCheckers setCertPathCheckers}
* or {@link PKIXParameters#addCertPathChecker addCertPathChecker} methods * or {@link PKIXParameters#addCertPathChecker addCertPathChecker} methods
* of the <code>PKIXParameters</code> and <code>PKIXBuilderParameters</code> * of the {@code PKIXParameters} and {@code PKIXBuilderParameters}
* class. Each of the <code>PKIXCertPathChecker</code>s {@link #check check} * class. Each of the {@code PKIXCertPathChecker}s {@link #check check}
* methods will be called, in turn, for each certificate processed by a PKIX * methods will be called, in turn, for each certificate processed by a PKIX
* <code>CertPathValidator</code> or <code>CertPathBuilder</code> * {@code CertPathValidator} or {@code CertPathBuilder}
* implementation. * implementation.
* *
* <p>A <code>PKIXCertPathChecker</code> may be called multiple times on * <p>A {@code PKIXCertPathChecker} may be called multiple times on
* successive certificates in a certification path. Concrete subclasses * successive certificates in a certification path. Concrete subclasses
* are expected to maintain any internal state that may be necessary to * are expected to maintain any internal state that may be necessary to
* check successive certificates. The {@link #init init} method is used * check successive certificates. The {@link #init init} method is used
* to initialize the internal state of the checker so that the certificates * to initialize the internal state of the checker so that the certificates
* of a new certification path may be checked. A stateful implementation * of a new certification path may be checked. A stateful implementation
* <b>must</b> override the {@link #clone clone} method if necessary in * <b>must</b> override the {@link #clone clone} method if necessary in
* order to allow a PKIX <code>CertPathBuilder</code> to efficiently * order to allow a PKIX {@code CertPathBuilder} to efficiently
* backtrack and try other paths. In these situations, the * backtrack and try other paths. In these situations, the
* <code>CertPathBuilder</code> is able to restore prior path validation * {@code CertPathBuilder} is able to restore prior path validation
* states by restoring the cloned <code>PKIXCertPathChecker</code>s. * states by restoring the cloned {@code PKIXCertPathChecker}s.
* *
* <p>The order in which the certificates are presented to the * <p>The order in which the certificates are presented to the
* <code>PKIXCertPathChecker</code> may be either in the forward direction * {@code PKIXCertPathChecker} may be either in the forward direction
* (from target to most-trusted CA) or in the reverse direction (from * (from target to most-trusted CA) or in the reverse direction (from
* most-trusted CA to target). A <code>PKIXCertPathChecker</code> implementation * most-trusted CA to target). A {@code PKIXCertPathChecker} implementation
* <b>must</b> support reverse checking (the ability to perform its checks when * <b>must</b> support reverse checking (the ability to perform its checks when
* it is presented with certificates in the reverse direction) and <b>may</b> * it is presented with certificates in the reverse direction) and <b>may</b>
* support forward checking (the ability to perform its checks when it is * support forward checking (the ability to perform its checks when it is
...@@ -96,19 +96,19 @@ public abstract class PKIXCertPathChecker ...@@ -96,19 +96,19 @@ public abstract class PKIXCertPathChecker
protected PKIXCertPathChecker() {} protected PKIXCertPathChecker() {}
/** /**
* Initializes the internal state of this <code>PKIXCertPathChecker</code>. * Initializes the internal state of this {@code PKIXCertPathChecker}.
* <p> * <p>
* The <code>forward</code> flag specifies the order that * The {@code forward} flag specifies the order that
* certificates will be passed to the {@link #check check} method * certificates will be passed to the {@link #check check} method
* (forward or reverse). A <code>PKIXCertPathChecker</code> <b>must</b> * (forward or reverse). A {@code PKIXCertPathChecker} <b>must</b>
* support reverse checking and <b>may</b> support forward checking. * support reverse checking and <b>may</b> support forward checking.
* *
* @param forward the order that certificates are presented to * @param forward the order that certificates are presented to
* the <code>check</code> method. If <code>true</code>, certificates * the {@code check} method. If {@code true}, certificates
* are presented from target to most-trusted CA (forward); if * are presented from target to most-trusted CA (forward); if
* <code>false</code>, from most-trusted CA to target (reverse). * {@code false}, from most-trusted CA to target (reverse).
* @throws CertPathValidatorException if this * @throws CertPathValidatorException if this
* <code>PKIXCertPathChecker</code> is unable to check certificates in * {@code PKIXCertPathChecker} is unable to check certificates in
* the specified order; it should never be thrown if the forward flag * the specified order; it should never be thrown if the forward flag
* is false since reverse checking must be supported * is false since reverse checking must be supported
*/ */
...@@ -118,32 +118,32 @@ public abstract class PKIXCertPathChecker ...@@ -118,32 +118,32 @@ public abstract class PKIXCertPathChecker
/** /**
* Indicates if forward checking is supported. Forward checking refers * Indicates if forward checking is supported. Forward checking refers
* to the ability of the <code>PKIXCertPathChecker</code> to perform * to the ability of the {@code PKIXCertPathChecker} to perform
* its checks when certificates are presented to the <code>check</code> * its checks when certificates are presented to the {@code check}
* method in the forward direction (from target to most-trusted CA). * method in the forward direction (from target to most-trusted CA).
* *
* @return <code>true</code> if forward checking is supported, * @return {@code true} if forward checking is supported,
* <code>false</code> otherwise * {@code false} otherwise
*/ */
@Override @Override
public abstract boolean isForwardCheckingSupported(); public abstract boolean isForwardCheckingSupported();
/** /**
* Returns an immutable <code>Set</code> of X.509 certificate extensions * Returns an immutable {@code Set} of X.509 certificate extensions
* that this <code>PKIXCertPathChecker</code> supports (i.e. recognizes, is * that this {@code PKIXCertPathChecker} supports (i.e. recognizes, is
* able to process), or <code>null</code> if no extensions are supported. * able to process), or {@code null} if no extensions are supported.
* <p> * <p>
* Each element of the set is a <code>String</code> representing the * Each element of the set is a {@code String} representing the
* Object Identifier (OID) of the X.509 extension that is supported. * Object Identifier (OID) of the X.509 extension that is supported.
* The OID is represented by a set of nonnegative integers separated by * The OID is represented by a set of nonnegative integers separated by
* periods. * periods.
* <p> * <p>
* All X.509 certificate extensions that a <code>PKIXCertPathChecker</code> * All X.509 certificate extensions that a {@code PKIXCertPathChecker}
* might possibly be able to process should be included in the set. * might possibly be able to process should be included in the set.
* *
* @return an immutable <code>Set</code> of X.509 extension OIDs (in * @return an immutable {@code Set} of X.509 extension OIDs (in
* <code>String</code> format) supported by this * {@code String} format) supported by this
* <code>PKIXCertPathChecker</code>, or <code>null</code> if no * {@code PKIXCertPathChecker}, or {@code null} if no
* extensions are supported * extensions are supported
*/ */
public abstract Set<String> getSupportedExtensions(); public abstract Set<String> getSupportedExtensions();
...@@ -153,10 +153,10 @@ public abstract class PKIXCertPathChecker ...@@ -153,10 +153,10 @@ public abstract class PKIXCertPathChecker
* state and removes any critical extensions that it processes from the * state and removes any critical extensions that it processes from the
* specified collection of OID strings that represent the unresolved * specified collection of OID strings that represent the unresolved
* critical extensions. The certificates are presented in the order * critical extensions. The certificates are presented in the order
* specified by the <code>init</code> method. * specified by the {@code init} method.
* *
* @param cert the <code>Certificate</code> to be checked * @param cert the {@code Certificate} to be checked
* @param unresolvedCritExts a <code>Collection</code> of OID strings * @param unresolvedCritExts a {@code Collection} of OID strings
* representing the current set of unresolved critical extensions * representing the current set of unresolved critical extensions
* @exception CertPathValidatorException if the specified certificate does * @exception CertPathValidatorException if the specified certificate does
* not pass the check * not pass the check
...@@ -177,12 +177,12 @@ public abstract class PKIXCertPathChecker ...@@ -177,12 +177,12 @@ public abstract class PKIXCertPathChecker
} }
/** /**
* Returns a clone of this object. Calls the <code>Object.clone()</code> * Returns a clone of this object. Calls the {@code Object.clone()}
* method. * method.
* All subclasses which maintain state must support and * All subclasses which maintain state must support and
* override this method, if necessary. * override this method, if necessary.
* *
* @return a copy of this <code>PKIXCertPathChecker</code> * @return a copy of this {@code PKIXCertPathChecker}
*/ */
@Override @Override
public Object clone() { public Object clone() {
......
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -31,13 +31,13 @@ import java.security.PublicKey; ...@@ -31,13 +31,13 @@ import java.security.PublicKey;
* This class represents the successful result of the PKIX certification * This class represents the successful result of the PKIX certification
* path validation algorithm. * path validation algorithm.
* *
* <p>Instances of <code>PKIXCertPathValidatorResult</code> are returned by the * <p>Instances of {@code PKIXCertPathValidatorResult} are returned by the
* {@link CertPathValidator#validate validate} method of * {@link CertPathValidator#validate validate} method of
* <code>CertPathValidator</code> objects implementing the PKIX algorithm. * {@code CertPathValidator} objects implementing the PKIX algorithm.
* *
* <p> All <code>PKIXCertPathValidatorResult</code> objects contain the * <p> All {@code PKIXCertPathValidatorResult} objects contain the
* valid policy tree and subject public key resulting from the * valid policy tree and subject public key resulting from the
* validation algorithm, as well as a <code>TrustAnchor</code> describing * validation algorithm, as well as a {@code TrustAnchor} describing
* the certification authority (CA) that served as a trust anchor for the * the certification authority (CA) that served as a trust anchor for the
* certification path. * certification path.
* <p> * <p>
...@@ -62,16 +62,16 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult { ...@@ -62,16 +62,16 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult {
private PublicKey subjectPublicKey; private PublicKey subjectPublicKey;
/** /**
* Creates an instance of <code>PKIXCertPathValidatorResult</code> * Creates an instance of {@code PKIXCertPathValidatorResult}
* containing the specified parameters. * containing the specified parameters.
* *
* @param trustAnchor a <code>TrustAnchor</code> describing the CA that * @param trustAnchor a {@code TrustAnchor} describing the CA that
* served as a trust anchor for the certification path * served as a trust anchor for the certification path
* @param policyTree the immutable valid policy tree, or <code>null</code> * @param policyTree the immutable valid policy tree, or {@code null}
* if there are no valid policies * if there are no valid policies
* @param subjectPublicKey the public key of the subject * @param subjectPublicKey the public key of the subject
* @throws NullPointerException if the <code>subjectPublicKey</code> or * @throws NullPointerException if the {@code subjectPublicKey} or
* <code>trustAnchor</code> parameters are <code>null</code> * {@code trustAnchor} parameters are {@code null}
*/ */
public PKIXCertPathValidatorResult(TrustAnchor trustAnchor, public PKIXCertPathValidatorResult(TrustAnchor trustAnchor,
PolicyNode policyTree, PublicKey subjectPublicKey) PolicyNode policyTree, PublicKey subjectPublicKey)
...@@ -86,10 +86,10 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult { ...@@ -86,10 +86,10 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult {
} }
/** /**
* Returns the <code>TrustAnchor</code> describing the CA that served * Returns the {@code TrustAnchor} describing the CA that served
* as a trust anchor for the certification path. * as a trust anchor for the certification path.
* *
* @return the <code>TrustAnchor</code> (never <code>null</code>) * @return the {@code TrustAnchor} (never {@code null})
*/ */
public TrustAnchor getTrustAnchor() { public TrustAnchor getTrustAnchor() {
return trustAnchor; return trustAnchor;
...@@ -98,18 +98,18 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult { ...@@ -98,18 +98,18 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult {
/** /**
* Returns the root node of the valid policy tree resulting from the * Returns the root node of the valid policy tree resulting from the
* PKIX certification path validation algorithm. The * PKIX certification path validation algorithm. The
* <code>PolicyNode</code> object that is returned and any objects that * {@code PolicyNode} object that is returned and any objects that
* it returns through public methods are immutable. * it returns through public methods are immutable.
* *
* <p>Most applications will not need to examine the valid policy tree. * <p>Most applications will not need to examine the valid policy tree.
* They can achieve their policy processing goals by setting the * They can achieve their policy processing goals by setting the
* policy-related parameters in <code>PKIXParameters</code>. However, more * policy-related parameters in {@code PKIXParameters}. However, more
* sophisticated applications, especially those that process policy * sophisticated applications, especially those that process policy
* qualifiers, may need to traverse the valid policy tree using the * qualifiers, may need to traverse the valid policy tree using the
* {@link PolicyNode#getParent PolicyNode.getParent} and * {@link PolicyNode#getParent PolicyNode.getParent} and
* {@link PolicyNode#getChildren PolicyNode.getChildren} methods. * {@link PolicyNode#getChildren PolicyNode.getChildren} methods.
* *
* @return the root node of the valid policy tree, or <code>null</code> * @return the root node of the valid policy tree, or {@code null}
* if there are no valid policies * if there are no valid policies
*/ */
public PolicyNode getPolicyTree() { public PolicyNode getPolicyTree() {
...@@ -120,7 +120,7 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult { ...@@ -120,7 +120,7 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult {
* Returns the public key of the subject (target) of the certification * Returns the public key of the subject (target) of the certification
* path, including any inherited public key parameters if applicable. * path, including any inherited public key parameters if applicable.
* *
* @return the public key of the subject (never <code>null</code>) * @return the public key of the subject (never {@code null})
*/ */
public PublicKey getPublicKey() { public PublicKey getPublicKey() {
return subjectPublicKey; return subjectPublicKey;
...@@ -142,10 +142,10 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult { ...@@ -142,10 +142,10 @@ public class PKIXCertPathValidatorResult implements CertPathValidatorResult {
/** /**
* Return a printable representation of this * Return a printable representation of this
* <code>PKIXCertPathValidatorResult</code>. * {@code PKIXCertPathValidatorResult}.
* *
* @return a <code>String</code> describing the contents of this * @return a {@code String} describing the contents of this
* <code>PKIXCertPathValidatorResult</code> * {@code PKIXCertPathValidatorResult}
*/ */
public String toString() { public String toString() {
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
......
/* /*
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,10 +26,10 @@ ...@@ -26,10 +26,10 @@
package java.security.cert; package java.security.cert;
/** /**
* The <code>PKIXReason</code> enumerates the potential PKIX-specific reasons * The {@code PKIXReason} enumerates the potential PKIX-specific reasons
* that an X.509 certification path may be invalid according to the PKIX * that an X.509 certification path may be invalid according to the PKIX
* (RFC 3280) standard. These reasons are in addition to those of the * (RFC 3280) standard. These reasons are in addition to those of the
* <code>CertPathValidatorException.BasicReason</code> enumeration. * {@code CertPathValidatorException.BasicReason} enumeration.
* *
* @since 1.7 * @since 1.7
*/ */
......
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -41,7 +41,7 @@ import java.util.Set; ...@@ -41,7 +41,7 @@ import java.util.Set;
* *
* <p>Most applications will not need to examine the valid policy tree. * <p>Most applications will not need to examine the valid policy tree.
* They can achieve their policy processing goals by setting the * They can achieve their policy processing goals by setting the
* policy-related parameters in <code>PKIXParameters</code>. However, * policy-related parameters in {@code PKIXParameters}. However,
* the valid policy tree is available for more sophisticated applications, * the valid policy tree is available for more sophisticated applications,
* especially those that process policy qualifiers. * especially those that process policy qualifiers.
* *
...@@ -50,12 +50,12 @@ import java.util.Set; ...@@ -50,12 +50,12 @@ import java.util.Set;
* valid policy tree. The tree can be traversed using the * valid policy tree. The tree can be traversed using the
* {@link #getChildren getChildren} and {@link #getParent getParent} methods. * {@link #getChildren getChildren} and {@link #getParent getParent} methods.
* Data about a particular node can be retrieved using other methods of * Data about a particular node can be retrieved using other methods of
* <code>PolicyNode</code>. * {@code PolicyNode}.
* *
* <p><b>Concurrent Access</b> * <p><b>Concurrent Access</b>
* <p>All <code>PolicyNode</code> objects must be immutable and * <p>All {@code PolicyNode} objects must be immutable and
* thread-safe. Multiple threads may concurrently invoke the methods defined * thread-safe. Multiple threads may concurrently invoke the methods defined
* in this class on a single <code>PolicyNode</code> object (or more than one) * in this class on a single {@code PolicyNode} object (or more than one)
* with no ill effects. This stipulation applies to all public fields and * with no ill effects. This stipulation applies to all public fields and
* methods of this class and any added or overridden by subclasses. * methods of this class and any added or overridden by subclasses.
* *
...@@ -65,10 +65,10 @@ import java.util.Set; ...@@ -65,10 +65,10 @@ import java.util.Set;
public interface PolicyNode { public interface PolicyNode {
/** /**
* Returns the parent of this node, or <code>null</code> if this is the * Returns the parent of this node, or {@code null} if this is the
* root node. * root node.
* *
* @return the parent of this node, or <code>null</code> if this is the * @return the parent of this node, or {@code null} if this is the
* root node * root node
*/ */
PolicyNode getParent(); PolicyNode getParent();
...@@ -76,8 +76,8 @@ public interface PolicyNode { ...@@ -76,8 +76,8 @@ public interface PolicyNode {
/** /**
* Returns an iterator over the children of this node. Any attempts to * Returns an iterator over the children of this node. Any attempts to
* modify the children of this node through the * modify the children of this node through the
* <code>Iterator</code>'s remove method must throw an * {@code Iterator}'s remove method must throw an
* <code>UnsupportedOperationException</code>. * {@code UnsupportedOperationException}.
* *
* @return an iterator over the children of this node * @return an iterator over the children of this node
*/ */
...@@ -94,7 +94,7 @@ public interface PolicyNode { ...@@ -94,7 +94,7 @@ public interface PolicyNode {
/** /**
* Returns the valid policy represented by this node. * Returns the valid policy represented by this node.
* *
* @return the <code>String</code> OID of the valid policy * @return the {@code String} OID of the valid policy
* represented by this node. For the root node, this method always returns * represented by this node. For the root node, this method always returns
* the special anyPolicy OID: "2.5.29.32.0". * the special anyPolicy OID: "2.5.29.32.0".
*/ */
...@@ -104,9 +104,9 @@ public interface PolicyNode { ...@@ -104,9 +104,9 @@ public interface PolicyNode {
* Returns the set of policy qualifiers associated with the * Returns the set of policy qualifiers associated with the
* valid policy represented by this node. * valid policy represented by this node.
* *
* @return an immutable <code>Set</code> of * @return an immutable {@code Set} of
* <code>PolicyQualifierInfo</code>s. For the root node, this * {@code PolicyQualifierInfo}s. For the root node, this
* is always an empty <code>Set</code>. * is always an empty {@code Set}.
*/ */
Set<? extends PolicyQualifierInfo> getPolicyQualifiers(); Set<? extends PolicyQualifierInfo> getPolicyQualifiers();
...@@ -114,9 +114,9 @@ public interface PolicyNode { ...@@ -114,9 +114,9 @@ public interface PolicyNode {
* Returns the set of expected policies that would satisfy this * Returns the set of expected policies that would satisfy this
* node's valid policy in the next certificate to be processed. * node's valid policy in the next certificate to be processed.
* *
* @return an immutable <code>Set</code> of expected policy * @return an immutable {@code Set} of expected policy
* <code>String</code> OIDs. For the root node, this method * {@code String} OIDs. For the root node, this method
* always returns a <code>Set</code> with one element, the * always returns a {@code Set} with one element, the
* special anyPolicy OID: "2.5.29.32.0". * special anyPolicy OID: "2.5.29.32.0".
*/ */
Set<String> getExpectedPolicies(); Set<String> getExpectedPolicies();
...@@ -125,8 +125,8 @@ public interface PolicyNode { ...@@ -125,8 +125,8 @@ public interface PolicyNode {
* Returns the criticality indicator of the certificate policy extension * Returns the criticality indicator of the certificate policy extension
* in the most recently processed certificate. * in the most recently processed certificate.
* *
* @return <code>true</code> if extension marked critical, * @return {@code true} if extension marked critical,
* <code>false</code> otherwise. For the root node, <code>false</code> * {@code false} otherwise. For the root node, {@code false}
* is always returned. * is always returned.
*/ */
boolean isCritical(); boolean isCritical();
......
/* /*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -50,12 +50,12 @@ import sun.security.util.DerValue; ...@@ -50,12 +50,12 @@ import sun.security.util.DerValue;
* policy information terms limit the set of policies for certification paths * policy information terms limit the set of policies for certification paths
* which include this certificate. * which include this certificate.
* <p> * <p>
* A <code>Set</code> of <code>PolicyQualifierInfo</code> objects are returned * A {@code Set} of {@code PolicyQualifierInfo} objects are returned
* by the {@link PolicyNode#getPolicyQualifiers PolicyNode.getPolicyQualifiers} * by the {@link PolicyNode#getPolicyQualifiers PolicyNode.getPolicyQualifiers}
* method. This allows applications with specific policy requirements to * method. This allows applications with specific policy requirements to
* process and validate each policy qualifier. Applications that need to * process and validate each policy qualifier. Applications that need to
* process policy qualifiers should explicitly set the * process policy qualifiers should explicitly set the
* <code>policyQualifiersRejected</code> flag to false (by calling the * {@code policyQualifiersRejected} flag to false (by calling the
* {@link PKIXParameters#setPolicyQualifiersRejected * {@link PKIXParameters#setPolicyQualifiersRejected
* PKIXParameters.setPolicyQualifiersRejected} method) before validating * PKIXParameters.setPolicyQualifiersRejected} method) before validating
* a certification path. * a certification path.
...@@ -64,17 +64,17 @@ import sun.security.util.DerValue; ...@@ -64,17 +64,17 @@ import sun.security.util.DerValue;
* that any policy qualifier in a certificate policies extension that is * that any policy qualifier in a certificate policies extension that is
* marked critical must be processed and validated. Otherwise the * marked critical must be processed and validated. Otherwise the
* certification path must be rejected. If the * certification path must be rejected. If the
* <code>policyQualifiersRejected</code> flag is set to false, it is up to * {@code policyQualifiersRejected} flag is set to false, it is up to
* the application to validate all policy qualifiers in this manner in order * the application to validate all policy qualifiers in this manner in order
* to be PKIX compliant. * to be PKIX compliant.
* *
* <p><b>Concurrent Access</b> * <p><b>Concurrent Access</b>
* *
* <p>All <code>PolicyQualifierInfo</code> objects must be immutable and * <p>All {@code PolicyQualifierInfo} objects must be immutable and
* thread-safe. That is, multiple threads may concurrently invoke the * thread-safe. That is, multiple threads may concurrently invoke the
* methods defined in this class on a single <code>PolicyQualifierInfo</code> * methods defined in this class on a single {@code PolicyQualifierInfo}
* object (or more than one) with no ill effects. Requiring * object (or more than one) with no ill effects. Requiring
* <code>PolicyQualifierInfo</code> objects to be immutable and thread-safe * {@code PolicyQualifierInfo} objects to be immutable and thread-safe
* allows them to be passed around to various pieces of code without * allows them to be passed around to various pieces of code without
* worrying about coordinating access. * worrying about coordinating access.
* *
...@@ -90,7 +90,7 @@ public class PolicyQualifierInfo { ...@@ -90,7 +90,7 @@ public class PolicyQualifierInfo {
private String pqiString; private String pqiString;
/** /**
* Creates an instance of <code>PolicyQualifierInfo</code> from the * Creates an instance of {@code PolicyQualifierInfo} from the
* encoded bytes. The encoded byte array is copied on construction. * encoded bytes. The encoded byte array is copied on construction.
* *
* @param encoded a byte array containing the qualifier in DER encoding * @param encoded a byte array containing the qualifier in DER encoding
...@@ -115,12 +115,12 @@ public class PolicyQualifierInfo { ...@@ -115,12 +115,12 @@ public class PolicyQualifierInfo {
} }
/** /**
* Returns the <code>policyQualifierId</code> field of this * Returns the {@code policyQualifierId} field of this
* <code>PolicyQualifierInfo</code>. The <code>policyQualifierId</code> * {@code PolicyQualifierInfo}. The {@code policyQualifierId}
* is an Object Identifier (OID) represented by a set of nonnegative * is an Object Identifier (OID) represented by a set of nonnegative
* integers separated by periods. * integers separated by periods.
* *
* @return the OID (never <code>null</code>) * @return the OID (never {@code null})
*/ */
public final String getPolicyQualifierId() { public final String getPolicyQualifierId() {
return mId; return mId;
...@@ -128,9 +128,9 @@ public class PolicyQualifierInfo { ...@@ -128,9 +128,9 @@ public class PolicyQualifierInfo {
/** /**
* Returns the ASN.1 DER encoded form of this * Returns the ASN.1 DER encoded form of this
* <code>PolicyQualifierInfo</code>. * {@code PolicyQualifierInfo}.
* *
* @return the ASN.1 DER encoded bytes (never <code>null</code>). * @return the ASN.1 DER encoded bytes (never {@code null}).
* Note that a copy is returned, so the data is cloned each time * Note that a copy is returned, so the data is cloned each time
* this method is called. * this method is called.
*/ */
...@@ -139,10 +139,10 @@ public class PolicyQualifierInfo { ...@@ -139,10 +139,10 @@ public class PolicyQualifierInfo {
} }
/** /**
* Returns the ASN.1 DER encoded form of the <code>qualifier</code> * Returns the ASN.1 DER encoded form of the {@code qualifier}
* field of this <code>PolicyQualifierInfo</code>. * field of this {@code PolicyQualifierInfo}.
* *
* @return the ASN.1 DER encoded bytes of the <code>qualifier</code> * @return the ASN.1 DER encoded bytes of the {@code qualifier}
* field. Note that a copy is returned, so the data is cloned each * field. Note that a copy is returned, so the data is cloned each
* time this method is called. * time this method is called.
*/ */
...@@ -152,10 +152,10 @@ public class PolicyQualifierInfo { ...@@ -152,10 +152,10 @@ public class PolicyQualifierInfo {
/** /**
* Return a printable representation of this * Return a printable representation of this
* <code>PolicyQualifierInfo</code>. * {@code PolicyQualifierInfo}.
* *
* @return a <code>String</code> describing the contents of this * @return a {@code String} describing the contents of this
* <code>PolicyQualifierInfo</code> * {@code PolicyQualifierInfo}
*/ */
public String toString() { public String toString() {
if (pqiString != null) if (pqiString != null)
......
/* /*
* Copyright (c) 2001, 2008, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -40,16 +40,16 @@ import sun.security.x509.X500Name; ...@@ -40,16 +40,16 @@ import sun.security.x509.X500Name;
* for validating X.509 certification paths. A most-trusted CA includes the * for validating X.509 certification paths. A most-trusted CA includes the
* public key of the CA, the CA's name, and any constraints upon the set of * public key of the CA, the CA's name, and any constraints upon the set of
* paths which may be validated using this key. These parameters can be * paths which may be validated using this key. These parameters can be
* specified in the form of a trusted <code>X509Certificate</code> or as * specified in the form of a trusted {@code X509Certificate} or as
* individual parameters. * individual parameters.
* <p> * <p>
* <b>Concurrent Access</b> * <b>Concurrent Access</b>
* <p> * <p>
* <p>All <code>TrustAnchor</code> objects must be immutable and * <p>All {@code TrustAnchor} objects must be immutable and
* thread-safe. That is, multiple threads may concurrently invoke the * thread-safe. That is, multiple threads may concurrently invoke the
* methods defined in this class on a single <code>TrustAnchor</code> * methods defined in this class on a single {@code TrustAnchor}
* object (or more than one) with no ill effects. Requiring * object (or more than one) with no ill effects. Requiring
* <code>TrustAnchor</code> objects to be immutable and thread-safe * {@code TrustAnchor} objects to be immutable and thread-safe
* allows them to be passed around to various pieces of code without * allows them to be passed around to various pieces of code without
* worrying about coordinating access. This stipulation applies to all * worrying about coordinating access. This stipulation applies to all
* public fields and methods of this class and any added or overridden * public fields and methods of this class and any added or overridden
...@@ -71,8 +71,8 @@ public class TrustAnchor { ...@@ -71,8 +71,8 @@ public class TrustAnchor {
private NameConstraintsExtension nc; private NameConstraintsExtension nc;
/** /**
* Creates an instance of <code>TrustAnchor</code> with the specified * Creates an instance of {@code TrustAnchor} with the specified
* <code>X509Certificate</code> and optional name constraints, which * {@code X509Certificate} and optional name constraints, which
* are intended to be used as additional constraints when validating * are intended to be used as additional constraints when validating
* an X.509 certification path. * an X.509 certification path.
* <p> * <p>
...@@ -82,7 +82,7 @@ public class TrustAnchor { ...@@ -82,7 +82,7 @@ public class TrustAnchor {
* <a href="http://www.ietf.org/rfc/rfc3280">RFC 3280</a> * <a href="http://www.ietf.org/rfc/rfc3280">RFC 3280</a>
* and X.509. The ASN.1 definition of this structure appears below. * and X.509. The ASN.1 definition of this structure appears below.
* *
* <pre><code> * <pre>{@code
* NameConstraints ::= SEQUENCE { * NameConstraints ::= SEQUENCE {
* permittedSubtrees [0] GeneralSubtrees OPTIONAL, * permittedSubtrees [0] GeneralSubtrees OPTIONAL,
* excludedSubtrees [1] GeneralSubtrees OPTIONAL } * excludedSubtrees [1] GeneralSubtrees OPTIONAL }
...@@ -106,20 +106,20 @@ public class TrustAnchor { ...@@ -106,20 +106,20 @@ public class TrustAnchor {
* uniformResourceIdentifier [6] IA5String, * uniformResourceIdentifier [6] IA5String,
* iPAddress [7] OCTET STRING, * iPAddress [7] OCTET STRING,
* registeredID [8] OBJECT IDENTIFIER} * registeredID [8] OBJECT IDENTIFIER}
* </code></pre> * }</pre>
* <p> * <p>
* Note that the name constraints byte array supplied is cloned to protect * Note that the name constraints byte array supplied is cloned to protect
* against subsequent modifications. * against subsequent modifications.
* *
* @param trustedCert a trusted <code>X509Certificate</code> * @param trustedCert a trusted {@code X509Certificate}
* @param nameConstraints a byte array containing the ASN.1 DER encoding of * @param nameConstraints a byte array containing the ASN.1 DER encoding of
* a NameConstraints extension to be used for checking name constraints. * a NameConstraints extension to be used for checking name constraints.
* Only the value of the extension is included, not the OID or criticality * Only the value of the extension is included, not the OID or criticality
* flag. Specify <code>null</code> to omit the parameter. * flag. Specify {@code null} to omit the parameter.
* @throws IllegalArgumentException if the name constraints cannot be * @throws IllegalArgumentException if the name constraints cannot be
* decoded * decoded
* @throws NullPointerException if the specified * @throws NullPointerException if the specified
* <code>X509Certificate</code> is <code>null</code> * {@code X509Certificate} is {@code null}
*/ */
public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
{ {
...@@ -134,7 +134,7 @@ public class TrustAnchor { ...@@ -134,7 +134,7 @@ public class TrustAnchor {
} }
/** /**
* Creates an instance of <code>TrustAnchor</code> where the * Creates an instance of {@code TrustAnchor} where the
* most-trusted CA is specified as an X500Principal and public key. * most-trusted CA is specified as an X500Principal and public key.
* Name constraints are an optional parameter, and are intended to be used * Name constraints are an optional parameter, and are intended to be used
* as additional constraints when validating an X.509 certification path. * as additional constraints when validating an X.509 certification path.
...@@ -155,9 +155,9 @@ public class TrustAnchor { ...@@ -155,9 +155,9 @@ public class TrustAnchor {
* @param nameConstraints a byte array containing the ASN.1 DER encoding of * @param nameConstraints a byte array containing the ASN.1 DER encoding of
* a NameConstraints extension to be used for checking name constraints. * a NameConstraints extension to be used for checking name constraints.
* Only the value of the extension is included, not the OID or criticality * Only the value of the extension is included, not the OID or criticality
* flag. Specify <code>null</code> to omit the parameter. * flag. Specify {@code null} to omit the parameter.
* @throws NullPointerException if the specified <code>caPrincipal</code> or * @throws NullPointerException if the specified {@code caPrincipal} or
* <code>pubKey</code> parameter is <code>null</code> * {@code pubKey} parameter is {@code null}
* @since 1.5 * @since 1.5
*/ */
public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey,
...@@ -173,7 +173,7 @@ public class TrustAnchor { ...@@ -173,7 +173,7 @@ public class TrustAnchor {
} }
/** /**
* Creates an instance of <code>TrustAnchor</code> where the * Creates an instance of {@code TrustAnchor} where the
* most-trusted CA is specified as a distinguished name and public key. * most-trusted CA is specified as a distinguished name and public key.
* Name constraints are an optional parameter, and are intended to be used * Name constraints are an optional parameter, and are intended to be used
* as additional constraints when validating an X.509 certification path. * as additional constraints when validating an X.509 certification path.
...@@ -191,17 +191,17 @@ public class TrustAnchor { ...@@ -191,17 +191,17 @@ public class TrustAnchor {
* *
* @param caName the X.500 distinguished name of the most-trusted CA in * @param caName the X.500 distinguished name of the most-trusted CA in
* <a href="http://www.ietf.org/rfc/rfc2253.txt">RFC 2253</a> * <a href="http://www.ietf.org/rfc/rfc2253.txt">RFC 2253</a>
* <code>String</code> format * {@code String} format
* @param pubKey the public key of the most-trusted CA * @param pubKey the public key of the most-trusted CA
* @param nameConstraints a byte array containing the ASN.1 DER encoding of * @param nameConstraints a byte array containing the ASN.1 DER encoding of
* a NameConstraints extension to be used for checking name constraints. * a NameConstraints extension to be used for checking name constraints.
* Only the value of the extension is included, not the OID or criticality * Only the value of the extension is included, not the OID or criticality
* flag. Specify <code>null</code> to omit the parameter. * flag. Specify {@code null} to omit the parameter.
* @throws IllegalArgumentException if the specified <code> * @throws IllegalArgumentException if the specified
* caName</code> parameter is empty <code>(caName.length() == 0)</code> * {@code caName} parameter is empty {@code (caName.length() == 0)}
* or incorrectly formatted or the name constraints cannot be decoded * or incorrectly formatted or the name constraints cannot be decoded
* @throws NullPointerException if the specified <code>caName</code> or * @throws NullPointerException if the specified {@code caName} or
* <code>pubKey</code> parameter is <code>null</code> * {@code pubKey} parameter is {@code null}
*/ */
public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints) public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
{ {
...@@ -225,7 +225,7 @@ public class TrustAnchor { ...@@ -225,7 +225,7 @@ public class TrustAnchor {
/** /**
* Returns the most-trusted CA certificate. * Returns the most-trusted CA certificate.
* *
* @return a trusted <code>X509Certificate</code> or <code>null</code> * @return a trusted {@code X509Certificate} or {@code null}
* if the trust anchor was not specified as a trusted certificate * if the trust anchor was not specified as a trusted certificate
*/ */
public final X509Certificate getTrustedCert() { public final X509Certificate getTrustedCert() {
...@@ -236,7 +236,7 @@ public class TrustAnchor { ...@@ -236,7 +236,7 @@ public class TrustAnchor {
* Returns the name of the most-trusted CA as an X500Principal. * Returns the name of the most-trusted CA as an X500Principal.
* *
* @return the X.500 distinguished name of the most-trusted CA, or * @return the X.500 distinguished name of the most-trusted CA, or
* <code>null</code> if the trust anchor was not specified as a trusted * {@code null} if the trust anchor was not specified as a trusted
* public key and name or X500Principal pair * public key and name or X500Principal pair
* @since 1.5 * @since 1.5
*/ */
...@@ -245,11 +245,11 @@ public class TrustAnchor { ...@@ -245,11 +245,11 @@ public class TrustAnchor {
} }
/** /**
* Returns the name of the most-trusted CA in RFC 2253 <code>String</code> * Returns the name of the most-trusted CA in RFC 2253 {@code String}
* format. * format.
* *
* @return the X.500 distinguished name of the most-trusted CA, or * @return the X.500 distinguished name of the most-trusted CA, or
* <code>null</code> if the trust anchor was not specified as a trusted * {@code null} if the trust anchor was not specified as a trusted
* public key and name or X500Principal pair * public key and name or X500Principal pair
*/ */
public final String getCAName() { public final String getCAName() {
...@@ -259,7 +259,7 @@ public class TrustAnchor { ...@@ -259,7 +259,7 @@ public class TrustAnchor {
/** /**
* Returns the public key of the most-trusted CA. * Returns the public key of the most-trusted CA.
* *
* @return the public key of the most-trusted CA, or <code>null</code> * @return the public key of the most-trusted CA, or {@code null}
* if the trust anchor was not specified as a trusted public key and name * if the trust anchor was not specified as a trusted public key and name
* or X500Principal pair * or X500Principal pair
*/ */
...@@ -306,16 +306,16 @@ public class TrustAnchor { ...@@ -306,16 +306,16 @@ public class TrustAnchor {
* *
* @return a byte array containing the ASN.1 DER encoding of * @return a byte array containing the ASN.1 DER encoding of
* a NameConstraints extension used for checking name constraints, * a NameConstraints extension used for checking name constraints,
* or <code>null</code> if not set. * or {@code null} if not set.
*/ */
public final byte [] getNameConstraints() { public final byte [] getNameConstraints() {
return ncBytes == null ? null : ncBytes.clone(); return ncBytes == null ? null : ncBytes.clone();
} }
/** /**
* Returns a formatted string describing the <code>TrustAnchor</code>. * Returns a formatted string describing the {@code TrustAnchor}.
* *
* @return a formatted string describing the <code>TrustAnchor</code> * @return a formatted string describing the {@code TrustAnchor}
*/ */
public String toString() { public String toString() {
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
......
/* /*
* Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -72,7 +72,7 @@ import sun.security.x509.X509CRLImpl; ...@@ -72,7 +72,7 @@ import sun.security.x509.X509CRLImpl;
* <a href="http://www.ietf.org/rfc/rfc3280.txt">RFC 3280: Internet X.509 * <a href="http://www.ietf.org/rfc/rfc3280.txt">RFC 3280: Internet X.509
* Public Key Infrastructure Certificate and CRL Profile</a>. * Public Key Infrastructure Certificate and CRL Profile</a>.
* <p> * <p>
* The ASN.1 definition of <code>tbsCertList</code> is: * The ASN.1 definition of {@code tbsCertList} is:
* <pre> * <pre>
* TBSCertList ::= SEQUENCE { * TBSCertList ::= SEQUENCE {
* version Version OPTIONAL, * version Version OPTIONAL,
...@@ -94,12 +94,12 @@ import sun.security.x509.X509CRLImpl; ...@@ -94,12 +94,12 @@ import sun.security.x509.X509CRLImpl;
* <p> * <p>
* CRLs are instantiated using a certificate factory. The following is an * CRLs are instantiated using a certificate factory. The following is an
* example of how to instantiate an X.509 CRL: * example of how to instantiate an X.509 CRL:
* <pre><code> * <pre>{@code
* try (InputStream inStream = new FileInputStream("fileName-of-crl")) { * try (InputStream inStream = new FileInputStream("fileName-of-crl")) {
* CertificateFactory cf = CertificateFactory.getInstance("X.509"); * CertificateFactory cf = CertificateFactory.getInstance("X.509");
* X509CRL crl = (X509CRL)cf.generateCRL(inStream); * X509CRL crl = (X509CRL)cf.generateCRL(inStream);
* } * }
* </code></pre> * }</pre>
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
* *
...@@ -122,8 +122,8 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -122,8 +122,8 @@ public abstract class X509CRL extends CRL implements X509Extension {
/** /**
* Compares this CRL for equality with the given * Compares this CRL for equality with the given
* object. If the <code>other</code> object is an * object. If the {@code other} object is an
* <code>instanceof</code> <code>X509CRL</code>, then * {@code instanceof} {@code X509CRL}, then
* its encoded form is retrieved and compared with the * its encoded form is retrieved and compared with the
* encoded form of this CRL. * encoded form of this CRL.
* *
...@@ -225,7 +225,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -225,7 +225,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
* *
* This method was added to version 1.8 of the Java Platform Standard * This method was added to version 1.8 of the Java Platform Standard
* Edition. In order to maintain backwards compatibility with existing * Edition. In order to maintain backwards compatibility with existing
* service providers, this method is not <code>abstract</code> * service providers, this method is not {@code abstract}
* and it provides a default implementation. * and it provides a default implementation.
* *
* @param key the PublicKey used to carry out the verification. * @param key the PublicKey used to carry out the verification.
...@@ -245,7 +245,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -245,7 +245,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
} }
/** /**
* Gets the <code>version</code> (version number) value from the CRL. * Gets the {@code version} (version number) value from the CRL.
* The ASN.1 definition for this is: * The ASN.1 definition for this is:
* <pre> * <pre>
* version Version OPTIONAL, * version Version OPTIONAL,
...@@ -261,12 +261,12 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -261,12 +261,12 @@ public abstract class X509CRL extends CRL implements X509Extension {
/** /**
* <strong>Denigrated</strong>, replaced by {@linkplain * <strong>Denigrated</strong>, replaced by {@linkplain
* #getIssuerX500Principal()}. This method returns the <code>issuer</code> * #getIssuerX500Principal()}. This method returns the {@code issuer}
* as an implementation specific Principal object, which should not be * as an implementation specific Principal object, which should not be
* relied upon by portable code. * relied upon by portable code.
* *
* <p> * <p>
* Gets the <code>issuer</code> (issuer distinguished name) value from * Gets the {@code issuer} (issuer distinguished name) value from
* the CRL. The issuer name identifies the entity that signed (and * the CRL. The issuer name identifies the entity that signed (and
* issued) the CRL. * issued) the CRL.
* *
...@@ -287,14 +287,14 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -287,14 +287,14 @@ public abstract class X509CRL extends CRL implements X509Extension {
* AttributeType ::= OBJECT IDENTIFIER * AttributeType ::= OBJECT IDENTIFIER
* AttributeValue ::= ANY * AttributeValue ::= ANY
* </pre> * </pre>
* The <code>Name</code> describes a hierarchical name composed of * The {@code Name} describes a hierarchical name composed of
* attributes, * attributes,
* such as country name, and corresponding values, such as US. * such as country name, and corresponding values, such as US.
* The type of the <code>AttributeValue</code> component is determined by * The type of the {@code AttributeValue} component is determined by
* the <code>AttributeType</code>; in general it will be a * the {@code AttributeType}; in general it will be a
* <code>directoryString</code>. A <code>directoryString</code> is usually * {@code directoryString}. A {@code directoryString} is usually
* one of <code>PrintableString</code>, * one of {@code PrintableString},
* <code>TeletexString</code> or <code>UniversalString</code>. * {@code TeletexString} or {@code UniversalString}.
* *
* @return a Principal whose name is the issuer distinguished name. * @return a Principal whose name is the issuer distinguished name.
*/ */
...@@ -302,11 +302,11 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -302,11 +302,11 @@ public abstract class X509CRL extends CRL implements X509Extension {
/** /**
* Returns the issuer (issuer distinguished name) value from the * Returns the issuer (issuer distinguished name) value from the
* CRL as an <code>X500Principal</code>. * CRL as an {@code X500Principal}.
* <p> * <p>
* It is recommended that subclasses override this method. * It is recommended that subclasses override this method.
* *
* @return an <code>X500Principal</code> representing the issuer * @return an {@code X500Principal} representing the issuer
* distinguished name * distinguished name
* @since 1.4 * @since 1.4
*/ */
...@@ -318,7 +318,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -318,7 +318,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
} }
/** /**
* Gets the <code>thisUpdate</code> date from the CRL. * Gets the {@code thisUpdate} date from the CRL.
* The ASN.1 definition for this is: * The ASN.1 definition for this is:
* <pre> * <pre>
* thisUpdate ChoiceOfTime * thisUpdate ChoiceOfTime
...@@ -327,14 +327,14 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -327,14 +327,14 @@ public abstract class X509CRL extends CRL implements X509Extension {
* generalTime GeneralizedTime } * generalTime GeneralizedTime }
* </pre> * </pre>
* *
* @return the <code>thisUpdate</code> date from the CRL. * @return the {@code thisUpdate} date from the CRL.
*/ */
public abstract Date getThisUpdate(); public abstract Date getThisUpdate();
/** /**
* Gets the <code>nextUpdate</code> date from the CRL. * Gets the {@code nextUpdate} date from the CRL.
* *
* @return the <code>nextUpdate</code> date from the CRL, or null if * @return the {@code nextUpdate} date from the CRL, or null if
* not present. * not present.
*/ */
public abstract Date getNextUpdate(); public abstract Date getNextUpdate();
...@@ -388,7 +388,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -388,7 +388,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
/** /**
* Gets the DER-encoded CRL information, the * Gets the DER-encoded CRL information, the
* <code>tbsCertList</code> from this CRL. * {@code tbsCertList} from this CRL.
* This can be used to verify the signature independently. * This can be used to verify the signature independently.
* *
* @return the DER-encoded CRL information. * @return the DER-encoded CRL information.
...@@ -397,7 +397,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -397,7 +397,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
public abstract byte[] getTBSCertList() throws CRLException; public abstract byte[] getTBSCertList() throws CRLException;
/** /**
* Gets the <code>signature</code> value (the raw signature bits) from * Gets the {@code signature} value (the raw signature bits) from
* the CRL. * the CRL.
* The ASN.1 definition for this is: * The ASN.1 definition for this is:
* <pre> * <pre>
...@@ -422,7 +422,7 @@ public abstract class X509CRL extends CRL implements X509Extension { ...@@ -422,7 +422,7 @@ public abstract class X509CRL extends CRL implements X509Extension {
* -- algorithm object identifier value * -- algorithm object identifier value
* </pre> * </pre>
* *
* <p>The algorithm name is determined from the <code>algorithm</code> * <p>The algorithm name is determined from the {@code algorithm}
* OID string. * OID string.
* *
* @return the signature algorithm name. * @return the signature algorithm name.
......
/* /*
* Copyright (c) 1997, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -68,8 +68,8 @@ public abstract class X509CRLEntry implements X509Extension { ...@@ -68,8 +68,8 @@ public abstract class X509CRLEntry implements X509Extension {
/** /**
* Compares this CRL entry for equality with the given * Compares this CRL entry for equality with the given
* object. If the <code>other</code> object is an * object. If the {@code other} object is an
* <code>instanceof</code> <code>X509CRLEntry</code>, then * {@code instanceof} {@code X509CRLEntry}, then
* its encoded form (the inner SEQUENCE) is retrieved and compared * its encoded form (the inner SEQUENCE) is retrieved and compared
* with the encoded form of this CRL entry. * with the encoded form of this CRL entry.
* *
...@@ -178,7 +178,7 @@ public abstract class X509CRLEntry implements X509Extension { ...@@ -178,7 +178,7 @@ public abstract class X509CRLEntry implements X509Extension {
* in the Reason Code extension of this CRL entry. * in the Reason Code extension of this CRL entry.
* *
* @return the reason the certificate has been revoked, or * @return the reason the certificate has been revoked, or
* <code>null</code> if this CRL entry does not have * {@code null} if this CRL entry does not have
* a Reason Code extension * a Reason Code extension
* @since 1.7 * @since 1.7
*/ */
......
/* /*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -59,9 +59,9 @@ import java.util.Set; ...@@ -59,9 +59,9 @@ import java.util.Set;
* -- the extnId object identifier value * -- the extnId object identifier value
* } * }
* </pre> * </pre>
* Since not all extensions are known, the <code>getExtensionValue</code> * Since not all extensions are known, the {@code getExtensionValue}
* method returns the DER-encoded OCTET STRING of the * method returns the DER-encoded OCTET STRING of the
* extension value (i.e., the <code>extnValue</code>). This can then * extension value (i.e., the {@code extnValue}). This can then
* be handled by a <em>Class</em> that understands the extension. * be handled by a <em>Class</em> that understands the extension.
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
...@@ -72,8 +72,8 @@ public interface X509Extension { ...@@ -72,8 +72,8 @@ public interface X509Extension {
/** /**
* Check if there is a critical extension that is not supported. * Check if there is a critical extension that is not supported.
* *
* @return <tt>true</tt> if a critical extension is found that is * @return {@code true} if a critical extension is found that is
* not supported, otherwise <tt>false</tt>. * not supported, otherwise {@code false}.
*/ */
public boolean hasUnsupportedCriticalExtension(); public boolean hasUnsupportedCriticalExtension();
...@@ -113,28 +113,28 @@ public interface X509Extension { ...@@ -113,28 +113,28 @@ public interface X509Extension {
* *
* Here is sample code to get a Set of non-critical extensions from an * Here is sample code to get a Set of non-critical extensions from an
* X509CRL revoked certificate entry and print the OIDs: * X509CRL revoked certificate entry and print the OIDs:
* <pre><code> * <pre>{@code
* CertificateFactory cf = null; * CertificateFactory cf = null;
* X509CRL crl = null; * X509CRL crl = null;
* try (InputStream inStrm = new FileInputStream("DER-encoded-CRL")) { * try (InputStream inStrm = new FileInputStream("DER-encoded-CRL")) {
* cf = CertificateFactory.getInstance("X.509"); * cf = CertificateFactory.getInstance("X.509");
* crl = (X509CRL)cf.generateCRL(inStrm); * crl = (X509CRL)cf.generateCRL(inStrm);
* }<p> * }
* *
* byte[] certData = &lt;DER-encoded certificate data&gt; * byte[] certData = <DER-encoded certificate data>
* ByteArrayInputStream bais = new ByteArrayInputStream(certData); * ByteArrayInputStream bais = new ByteArrayInputStream(certData);
* X509Certificate cert = (X509Certificate)cf.generateCertificate(bais); * X509Certificate cert = (X509Certificate)cf.generateCertificate(bais);
* X509CRLEntry badCert = * X509CRLEntry badCert =
* crl.getRevokedCertificate(cert.getSerialNumber());<p> * crl.getRevokedCertificate(cert.getSerialNumber());
* *
* if (badCert != null) { * if (badCert != null) {
* Set<String> nonCritSet = badCert.getNonCriticalExtensionOIDs();<p> * Set<String> nonCritSet = badCert.getNonCriticalExtensionOIDs();
* if (nonCritSet != null) * if (nonCritSet != null)
* for (String oid : nonCritSet) { * for (String oid : nonCritSet) {
* System.out.println(oid); * System.out.println(oid);
* } * }
* } * }
* </code></pre> * }</pre>
* *
* @return a Set (or an empty Set if none are marked non-critical) of * @return a Set (or an empty Set if none are marked non-critical) of
* the extension OID strings for extensions that are marked non-critical. * the extension OID strings for extensions that are marked non-critical.
...@@ -145,9 +145,9 @@ public interface X509Extension { ...@@ -145,9 +145,9 @@ public interface X509Extension {
/** /**
* Gets the DER-encoded OCTET string for the extension value * Gets the DER-encoded OCTET string for the extension value
* (<em>extnValue</em>) identified by the passed-in <code>oid</code> * (<em>extnValue</em>) identified by the passed-in {@code oid}
* String. * String.
* The <code>oid</code> string is * The {@code oid} string is
* represented by a set of nonnegative whole numbers separated * represented by a set of nonnegative whole numbers separated
* by periods. * by periods.
* *
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册