You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2009/04/28 19:01:47 UTC
svn commit: r769463 [2/9] - in
/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common:
java/security/ java/security/acl/ java/security/cert/
java/security/interfaces/ java/security/spec/ javax/security/cert/
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/CodeSource.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/CodeSource.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/CodeSource.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/CodeSource.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Alexander V. Astapchuk
-* @version $Revision$
-*/
-
package java.security;
import java.io.ByteArrayInputStream;
@@ -44,6 +39,14 @@
import org.apache.harmony.security.fortress.PolicyUtils;
import org.apache.harmony.security.internal.nls.Messages;
+/**
+ * {@code CodeSource} encapsulates the location from where code is loaded and
+ * the certificates that were used to verify that code. This information is used
+ * by {@code SecureClassLoader} to define protection domains for loaded classes.
+ *
+ * @see SecureClassLoader
+ * @see ProtectionDomain
+ */
public class CodeSource implements Serializable {
private static final long serialVersionUID = 4977541819976013951L;
@@ -64,15 +67,17 @@
// Cached factory used to build CertPath-s in <code>getCodeSigners()</code>.
private transient CertificateFactory factory;
- /**
- * Constructs a new instance of this class with its url and certificates
- * fields filled in from the arguments.
- *
- * @param location
- * URL the URL.
- * @param certs
- * Certificate[] the Certificates.
- */
+ /**
+ * Constructs a new instance of {@code CodeSource} with the specified
+ * {@code URL} and the {@code Certificate}s.
+ *
+ * @param location
+ * the {@code URL} representing the location from where code is
+ * loaded, maybe {@code null}.
+ * @param certs
+ * the {@code Certificate} used to verify the code, loaded from
+ * the specified {@code location}, maybe {@code null}.
+ */
public CodeSource(URL location, Certificate[] certs) {
this.location = location;
if (certs != null) {
@@ -81,6 +86,17 @@
}
}
+ /**
+ * Constructs a new instance of {@code CodeSource} with the specified
+ * {@code URL} and the {@code CodeSigner}s.
+ *
+ * @param location
+ * the {@code URL} representing the location from where code is
+ * loaded, maybe {@code null}.
+ * @param signers
+ * the {@code CodeSigner}s of the code, loaded from the specified
+ * {@code location}. Maybe {@code null}.
+ */
public CodeSource(URL location, CodeSigner[] signers) {
this.location = location;
if (signers != null) {
@@ -89,19 +105,19 @@
}
}
- /**
- * Compares the argument to the receiver, and answers true if they represent
- * the <em>same</em> object using a class specific comparison. In this
- * case, the receiver and the object must have the same URL and the same
- * collection of certificates.
- *
- *
- * @param obj
- * the object to compare with this object
- * @return <code>true</code> if the object is the same as this object
- * <code>false</code> if it is different from this object
- * @see #hashCode
- */
+ /**
+ * Compares the specified object with this {@code CodeSource} for equality.
+ * Returns {@code true} if the specified object is also an instance of
+ * {@code CodeSource}, points to the same {@code URL} location and the two
+ * code sources encapsulate the same {@code Certificate}s. The order of the
+ * {@code Certificate}s is ignored by this method.
+ *
+ * @param obj
+ * object to be compared for equality with this {@code
+ * CodeSource}.
+ * @return {@code true} if the specified object is equal to this {@code
+ * CodeSource}, otherwise {@code false}.
+ */
public boolean equals(Object obj) {
if (obj == this) {
return true;
@@ -137,12 +153,17 @@
return true;
}
- /**
- * Answers the certificates held onto by the receiver.
- *
- *
- * @return Certificate[] the receiver's certificates
- */
+ /**
+ * Returns the certificates of this {@code CodeSource}. If the
+ * {@link #CodeSource(URL, CodeSigner[])} constructor was used to create
+ * this instance, the certificates are obtained from the supplied signers.
+ * <p>
+ * External modifications of the returned {@code Certificate[]} has no
+ * impact on this {@code CodeSource}.
+ *
+ * @return the certificates of this {@code CodeSource} or {@code null} if
+ * there is none.
+ */
public final Certificate[] getCertificates() {
getCertificatesNoClone();
if (certs == null) {
@@ -176,6 +197,15 @@
return certs;
}
+ /**
+ * Returns the {@code CodeSigner}s of this {@code CodeSource}. If the
+ * {@link #CodeSource(URL, Certificate[])} constructor was used to create
+ * this instance, the signers are obtained from the supplied certificates.
+ * Only X.509 certificates are analyzed.
+ *
+ * @return the signers of this {@code CodeSource}, or {@code null} if there
+ * is none.
+ */
public final CodeSigner[] getCodeSigners() {
if (signers != null) {
CodeSigner[] tmp = new CodeSigner[signers.length];
@@ -264,26 +294,25 @@
return null;
}
- /**
- * Answers the receiver's location.
- *
- *
- * @return URL the receiver's URL
- */
+ /**
+ * Returns the location of this {@code CodeSource}.
+ *
+ * @return the location of this {@code CodeSource}, maybe {@code null}.
+ */
public final URL getLocation() {
return location;
}
- /**
- * Answers an integer hash code for the receiver. Any two objects which
- * answer <code>true</code> when passed to <code>.equals</code> must
- * answer the same value for this method.
- *
- *
- * @return int the receiver's hash.
- *
- * @see #equals
- */
+ /**
+ * Returns the hash code value for this {@code CodeSource}.
+ * Returns the same hash code for {@code CodeSource}s that are
+ * equal to each other as required by the general contract of
+ * {@link Object#hashCode}.
+ *
+ * @return the hash code value for this {@code CodeSource}.
+ * @see Object#equals(Object)
+ * @see CodeSource#equals(Object)
+ */
public int hashCode() {
//
// hashCode() is undocumented there. Should we also use certs[i] to
@@ -292,15 +321,71 @@
return location == null ? 0 : location.hashCode();
}
- /**
- * Indicates whether the argument code source is implied by the receiver.
- *
- *
- * @return boolean <code>true</code> if the argument code source is
- * implied by the receiver, and <code>false</code> if it is not.
- * @param cs
- * CodeSource the code source to check
- */
+ /**
+ * Indicates whether the specified code source is implied by this {@code
+ * CodeSource}. Returns {@code true} if all of the following conditions are
+ * {@code true}, otherwise {@code false}:
+ * <p>
+ * <ul>
+ * <li>{@code cs} is not {@code null}
+ * <li>if this {@code CodeSource} has associated certificates, all
+ * certificates are present in {@code cs}. The certificates are extracted
+ * from the signers if signers are present.
+ * <li>if this {@code CodeSource}'s location is not {@code null}, the
+ * following conditions are checked
+ * <ul>
+ * <li>this {@code CodeSource}'s location is not {@code null}
+ * <li>this {@code CodeSource}'s location protocol is equal to {@code cs}'s
+ * location protocol
+ * <li>if this {@code CodeSource}'s location host is not {@code null}, the
+ * following conditions are checked
+ * <ul>
+ * <li>{@code cs}'s host is not {@code null}
+ * <li>the {@link SocketPermission} of this {@code CodeSource}'s location
+ * host implies the {@code SocketPermission} of {@code cs}'s location host
+ * </ul>
+ * <li>if this {@code CodeSource}'s location port != -1 the port of {@code
+ * cs}'s location is equal to this {@code CodeSource}'s location port
+ * <li>this {@code CodeSource}'s location file matches {@code cs}'s file
+ * whereas special wildcard matching applies as described below
+ * <li>this {@code CodeSource}'s location reference is equal to to {@code
+ * cs}'s location reference
+ * </ul>
+ * </ul>
+ * <p>
+ * Note: If this {@code CodeSource} has a {@code null} location and not any
+ * certificates, this method returns {@code true}.
+ * <p>
+ * Matching rules for the {@code CodeSource}'s location file:
+ * <ul>
+ * <li>if this {@code CodeSource}'s location file ends with {@code "/-"},
+ * then {@code cs}'s file must start with {@code CodeSource}'s location file
+ * (exclusive the trailing '-')
+ * <li>if this {@code CodeSource}'s location file ends with {@code "/*"},
+ * then {@code cs}'s file must start with {@code CodeSource}'s location file
+ * (exclusive the trailing '*') and must not have any further '/'
+ * <li>if this {@code CodeSource}'s location file ends with {@code "/"},
+ * then {@code cs}'s file must start with {@code CodeSource}'s location file
+ * <li>if this {@code CodeSource}'s location file does not end with {@code
+ * "/"}, then {@code cs}'s file must start with {@code CodeSource}'s
+ * location file with the '/' appended to it.
+ * </ul>
+ * Examples for locations that imply the location
+ * "http://harmony.apache.org/milestones/M9/apache-harmony.jar":
+ *
+ * <pre>
+ * http:
+ * http://*/milestones/M9/*
+ * http://*.apache.org/milestones/M9/*
+ * http://harmony.apache.org/milestones/-
+ * http://harmony.apache.org/milestones/M9/apache-harmony.jar
+ * </pre>
+ *
+ * @param cs
+ * the code source to check.
+ * @return {@code true} if the argument code source is implied by this
+ * {@code CodeSource}, otherwise {@code false}.
+ */
public boolean implies(CodeSource cs) {
//
// Here, javadoc:N refers to the appropriate item in the API spec for
@@ -447,13 +532,13 @@
return true;
}
- /**
- * Answers a string containing a concise, human-readable description of the
- * receiver.
- *
- *
- * @return a printable representation for the receiver.
- */
+ /**
+ * Returns a string containing a concise, human-readable description of the
+ * this {@code CodeSource} including its location, its certificates and its
+ * signers.
+ *
+ * @return a printable representation for this {@code CodeSource}.
+ */
public String toString() {
StringBuilder buf = new StringBuilder();
buf.append("CodeSource, url="); //$NON-NLS-1$
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestException.java Tue Apr 28 17:01:41 2009
@@ -15,52 +15,51 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * This class represents exceptions for message digest computation.
- *
+ *{@code DigestException} is a general message digest exception.
*/
public class DigestException extends GeneralSecurityException {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = 5821450303093652515L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code DigestException} with the
+ * given message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public DigestException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code DigestException}.
+ */
public DigestException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code DigestException} with the
+ * given message and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public DigestException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code DigestException} with the
+ * cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public DigestException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestInputStream.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestInputStream.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestInputStream.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestInputStream.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security;
import java.io.FilterInputStream;
@@ -27,13 +22,13 @@
import java.io.InputStream;
/**
- * @com.intel.drl.spec_ref
- *
+ * {@code DigestInputStream} is a {@code FilterInputStream} which maintains an
+ * associated message digest.
*/
public class DigestInputStream extends FilterInputStream {
/**
- * @com.intel.drl.spec_ref
+ * The message digest for this stream.
*/
protected MessageDigest digest;
@@ -41,51 +36,48 @@
private boolean isOn = true;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of this {@code DigestInputStream}, using the
+ * given {@code stream} and the {@code digest}.
+ *
+ * @param stream
+ * the input stream.
+ * @param digest
+ * the message digest.
*/
public DigestInputStream(InputStream stream, MessageDigest digest) {
super(stream);
this.digest = digest;
}
- /**
- * Answers the MessageDigest which the receiver uses when computing the
- * hash.
- *
- *
- * @return MessageDigest the digest the receiver uses when computing the
- * hash.
- *
- */
+ /**
+ * Returns the message digest for this stream.
+ *
+ * @return the message digest for this stream.
+ */
public MessageDigest getMessageDigest() {
return digest;
}
- /**
- * Sets the MessageDigest which the receiver will use when computing the
- * hash.
- *
- *
- * @param digest
- * MessageDigest the digest to use when computing the hash.
- *
- * @see MessageDigest
- * @see #on
- */
+ /**
+ * Sets the message digest which this stream will use.
+ *
+ * @param digest
+ * the message digest which this stream will use.
+ */
public void setMessageDigest(MessageDigest digest) {
this.digest = digest;
}
- /**
- * Reads the next byte and answers it as an int. Updates the digest for the
- * byte if this function is enabled.
- *
- *
- * @return int the byte which was read or -1 at end of stream.
- *
- * @exception java.io.IOException
- * If reading the source stream causes an IOException.
- */
+ /**
+ * Reads the next byte and returns it as an {@code int}. Updates the digest
+ * for the byte if this function is {@link #on(boolean)}.
+ * <p>
+ * This operation is blocking.
+ *
+ * @return the byte which was read or -1 at end of stream.
+ * @throws IOException
+ * if reading the source stream causes an {@code IOException}.
+ */
public int read() throws IOException {
// read the next byte
int byteRead = in.read();
@@ -100,7 +92,23 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Reads {@code len} bytes into the specified {@code byte[]}, starting from
+ * the specified offset. Updates the digest if this function is
+ * {@link #on(boolean)}.
+ * <p>
+ * This operation is blocking.
+ *
+ * @param b
+ * the byte array in which to store the bytes
+ * @param off
+ * the initial position in {@code b} to store the bytes read from
+ * this stream
+ * @param len
+ * the maximum number of bytes to store in {@code b}
+ * @return the number of bytes actually read or -1 if the end of the
+ * filtered stream has been reached while reading
+ * @throws IOException
+ * if reading the source stream causes an {@code IOException}
*/
public int read(byte[] b, int off, int len) throws IOException {
// read next up to len bytes
@@ -115,27 +123,24 @@
return bytesRead;
}
- /**
- * Enables or disables the digest function (default is on).
- *
- *
- * @param on
- * boolean true if the digest should be computed, and false
- * otherwise.
- *
+ /**
+ * Enables or disables the digest function (default is on).
+ *
+ * @param on
+ * {@code true} if the digest should be computed, {@code false}
+ * otherwise.
* @see MessageDigest
- */
+ */
public void on(boolean on) {
isOn = on;
}
- /**
- * Answers a string containing a concise, human-readable description of the
- * receiver.
- *
- *
- * @return String a printable representation for the receiver.
- */
+ /**
+ * Returns a string containing a concise, human-readable description of this
+ * {@code DigestInputStream} including the digest.
+ *
+ * @return a printable representation for this {@code DigestInputStream}.
+ */
public String toString() {
return super.toString() + ", " + digest.toString() + //$NON-NLS-1$
(isOn ? ", is on" : ", is off"); //$NON-NLS-1$ //$NON-NLS-2$
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestOutputStream.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestOutputStream.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestOutputStream.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DigestOutputStream.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security;
import java.io.FilterOutputStream;
@@ -27,13 +22,13 @@
import java.io.OutputStream;
/**
- * @com.intel.drl.spec_ref
- *
+ * {@code DigestOutputStream} is a {@code FilterOutputStream} which maintains an
+ * associated message digest.
*/
public class DigestOutputStream extends FilterOutputStream {
/**
- * @com.intel.drl.spec_ref
+ * The message digest for this stream.
*/
protected MessageDigest digest;
@@ -41,43 +36,46 @@
private boolean isOn = true;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of this {@code DigestOutputStream}, using the
+ * given {@code stream} and the {@code digest}.
+ *
+ * @param stream
+ * the output stream.
+ * @param digest
+ * the message digest.
*/
public DigestOutputStream(OutputStream stream, MessageDigest digest) {
super(stream);
this.digest = digest;
}
- /**
- * Answers the MessageDigest which the receiver uses when computing the
- * hash.
- *
- *
- * @return MessageDigest the digest the receiver uses when computing the
- * hash.
- */
-
+ /**
+ * Returns the message digest for this stream.
+ *
+ * @return the message digest for this stream.
+ */
public MessageDigest getMessageDigest() {
return digest;
}
- /**
- * Sets the MessageDigest which the receiver will use when computing the
- * hash.
- *
- *
- * @param digest
- * MessageDigest the digest to use when computing the hash.
- *
- * @see MessageDigest
- * @see #on
- */
+ /**
+ * Sets the message digest which this stream will use.
+ *
+ * @param digest
+ * the message digest which this stream will use.
+ */
public void setMessageDigest(MessageDigest digest) {
this.digest = digest;
}
/**
- * @com.intel.drl.spec_ref
+ * Writes the specified {@code int} to the stream. Updates the digest if
+ * this function is {@link #on(boolean)}.
+ *
+ * @param b
+ * the byte to be written.
+ * @throws IOException
+ * if writing to the stream causes a {@code IOException}
*/
public void write(int b) throws IOException {
// update digest only if digest functionality is on
@@ -89,7 +87,17 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Writes {@code len} bytes into the stream, starting from the specified
+ * offset. Updates the digest if this function is {@link #on(boolean)}.
+ *
+ * @param b
+ * the buffer to write to.
+ * @param off
+ * the index of the first byte in {@code b} to write.
+ * @param len
+ * the number of bytes in {@code b} to write.
+ * @throws IOException
+ * if writing to the stream causes an {@code IOException}.
*/
public void write(byte[] b, int off, int len) throws IOException {
// update digest only if digest functionality is on
@@ -100,27 +108,24 @@
out.write(b, off, len);
}
- /**
- * Enables or disables the digest function (default is on).
- *
- *
- * @param on
- * boolean true if the digest should be computed, and false
- * otherwise.
- *
+ /**
+ * Enables or disables the digest function (default is on).
+ *
+ * @param on
+ * {@code true} if the digest should be computed, {@code false}
+ * otherwise.
* @see MessageDigest
- */
+ */
public void on(boolean on) {
isOn = on;
}
- /**
- * Answers a string containing a concise, human-readable description of the
- * receiver.
- *
- *
- * @return String a printable representation for the receiver.
- */
+ /**
+ * Returns a string containing a concise, human-readable description of this
+ * {@code DigestOutputStream} including the digest.
+ *
+ * @return a printable representation for this {@code DigestOutputStream}.
+ */
public String toString() {
return super.toString() + ", " + digest.toString() + //$NON-NLS-1$
(isOn ? ", is on" : ", is off"); //$NON-NLS-1$ //$NON-NLS-2$
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DomainCombiner.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DomainCombiner.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DomainCombiner.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/DomainCombiner.java Tue Apr 28 17:01:41 2009
@@ -15,21 +15,32 @@
* limitations under the License.
*/
-/**
-* @author Alexander V. Astapchuk
-* @version $Revision$
-*/
-
package java.security;
/**
- * A DomainCombiner is a way to update the protection domains from an
- * AccessControlContext
+ * {@code DomainCombiner} is used to update and optimize {@code
+ * ProtectionDomain}s from an {@code AccessControlContext}.
*
+ * @see AccessControlContext
+ * @see AccessControlContext#AccessControlContext(AccessControlContext,
+ * DomainCombiner)
*/
public interface DomainCombiner {
+
/**
- * @com.intel.drl.spec_ref
+ * Returns a combination of the two provided {@code ProtectionDomain}
+ * arrays. Implementers can simply merge the two arrays into one, remove
+ * duplicates and perform other optimizations.
+ *
+ * @param current
+ * the protection domains of the current execution thread (since
+ * the most recent call to {@link AccessController#doPrivileged}
+ * ).
+ * @param assigned
+ * the protection domains of the parent thread, maybe {@code
+ * null}.
+ * @return a single {@code ProtectionDomain} array computed from the two
+ * provided arrays.
*/
ProtectionDomain[] combine(ProtectionDomain[] current,
ProtectionDomain[] assigned);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GeneralSecurityException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GeneralSecurityException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GeneralSecurityException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GeneralSecurityException.java Tue Apr 28 17:01:41 2009
@@ -15,52 +15,52 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * This class represents the general security exception. Subclasses will
- * represents specific security problems.
- *
+ * {@code GeneralSecurityException} is a general security exception and the
+ * superclass for all security specific exceptions.
*/
public class GeneralSecurityException extends Exception {
- /**
- * @com.intel.drl.spec_ref
- */
+
private static final long serialVersionUID = 894798122053539237L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code GeneralSecurityException} with the
+ * given message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public GeneralSecurityException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code GeneralSecurityException}.
+ */
public GeneralSecurityException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code GeneralSecurityException} with the
+ * given message and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public GeneralSecurityException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code GeneralSecurityException} with the
+ * cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public GeneralSecurityException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Guard.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Guard.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Guard.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Guard.java Tue Apr 28 17:01:41 2009
@@ -15,22 +15,22 @@
* limitations under the License.
*/
-/**
-* @author Alexey V. Varlamov
-* @version $Revision$
-*/
-
package java.security;
/**
- * This interface is implemented by objects which wish to control access to
- * other objects.
- *
+ * {@code Guard} implementors protect access to other objects.
*/
public interface Guard {
- /**
- * @com.intel.drl.spec_ref
+ /**
+ * Checks whether access to the specified {@code Object} should be granted.
+ * This method returns silently if access is granted, otherwise a {@code
+ * SecurityException} is thrown.
+ *
+ * @param object
+ * the object to be protected by this {@code Guard}.
+ * @throws SecurityException
+ * if access is not granted.
*/
public void checkGuard(Object object) throws SecurityException;
}
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GuardedObject.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GuardedObject.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GuardedObject.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/GuardedObject.java Tue Apr 28 17:01:41 2009
@@ -15,63 +15,47 @@
* limitations under the License.
*/
-/**
-* @author Alexey V. Varlamov
-* @version $Revision$
-*/
-
package java.security;
import java.io.IOException;
import java.io.Serializable;
/**
- * GuardedObject controls access to an object, by checking all requests for the
- * object with a Guard.
- *
+ * {@code GuardedObject} controls access to an object, by checking all requests
+ * for the object with a {@code Guard}.
*/
public class GuardedObject implements Serializable {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = -5240450096227834308L;
- /**
- * @com.intel.drl.spec_ref
- */
private final Object object;
- /**
- * @com.intel.drl.spec_ref
- */
private final Guard guard;
- /**
- * Constructs a GuardedObject to protect access to the specified Object
- * using the specified Guard.
- *
- * @param object
- * the Object to guard
- * @param guard
- * the Guard
- */
+ /**
+ * Constructs a new instance of {@code GuardedObject} which protects access
+ * to the specified {@code Object} using the specified {@code Guard}.
+ *
+ * @param object
+ * the {@code Object} to protect.
+ * @param guard
+ * the {@code Guard} which protects the specified {@code Object},
+ * maybe {@code null}.
+ */
public GuardedObject(Object object, Guard guard) {
this.object = object;
this.guard = guard;
}
- /**
- * Checks whether access should be granted to the object. If access is
- * granted, this method returns the object. If it is not granted, then a
- * <code>SecurityException</code> is thrown.
- *
- *
- * @return the guarded object
- *
- * @exception java.lang.SecurityException
- * If access is not granted to the object
- */
+ /**
+ * Returns the guarded {@code Object} if the associated {@code Guard}
+ * permits access. If access is not granted, then a {@code
+ * SecurityException} is thrown.
+ *
+ * @return the guarded object.
+ * @exception SecurityException
+ * if access is not granted to the guarded object.
+ */
public Object getObject() throws SecurityException {
if (guard != null) {
guard.checkGuard(object);
@@ -79,8 +63,9 @@
return object;
}
- /**
- * Checks guard (if there is one) before performing a default serialization.
+ /**
+ * Checks the guard (if there is one) before performing a default
+ * serialization.
*/
private void writeObject(java.io.ObjectOutputStream out) throws IOException {
if (guard != null) {
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Identity.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Identity.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Identity.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Identity.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Alexander V. Astapchuk
-* @version $Revision$
-*/
-
package java.security;
import java.io.Serializable;
@@ -29,8 +24,11 @@
import org.apache.harmony.security.internal.nls.Messages;
/**
- *
- * @deprecated
+ * {@code Identity} represents an identity like a person or a company.
+ *
+ * @deprecated The functionality of this class has been replace by
+ * {@link Principal}, {@link KeyStore} and the {@code
+ * java.security.cert} package.
*/
@Deprecated
public abstract class Identity implements Principal, Serializable {
@@ -46,13 +44,34 @@
private Vector<Certificate> certificates;
+ /**
+ * Constructs a new instance of {@code Identity}.
+ */
protected Identity() {
}
+ /**
+ * Creates a new instance of {@code Identity} with the specified name.
+ *
+ * @param name
+ * the name of this {@code Identity}.
+ */
public Identity(String name) {
this.name = name;
}
+ /**
+ * Creates a new instance of {@code Identity} with the specified name and
+ * the scope of this {@code Identity}.
+ *
+ * @param name
+ * the name of this {@code Identity}.
+ * @param scope
+ * the {@code IdentityScope} of this {@code Identity}.
+ * @throws KeyManagementException
+ * if an {@code Identity} with the same name is already present
+ * in the specified scope.
+ */
public Identity(String name, IdentityScope scope)
throws KeyManagementException {
this(name);
@@ -62,6 +81,21 @@
}
}
+ /**
+ * Adds a {@code Certificate} to this {@code Identity}.
+ * <p>
+ * If a {@code SecurityManager} is installed, code calling this method needs
+ * the {@code SecurityPermission} {@code addIdentityCertificate} to be
+ * granted, otherwise a {@code SecurityException} will be thrown.
+ *
+ * @param certificate
+ * the {@code Certificate} to be added to this {@code Identity}.
+ * @throws KeyManagementException
+ * if the certificate is not valid.
+ * @throws SecurityException
+ * if a {@code SecurityManager} is installed and the caller does
+ * not have permission to invoke this method.
+ */
public void addCertificate(Certificate certificate)
throws KeyManagementException {
SecurityManager sm = System.getSecurityManager();
@@ -106,6 +140,22 @@
+ /**
+ * Removes the specified {@code Certificate} from this {@code Identity}.
+ * <p>
+ * If a {@code SecurityManager} is installed, code calling this method needs
+ * the {@code SecurityPermission} {@code "removeIdentityCertificate"} to be
+ * granted, otherwise a {@code SecurityException} will be thrown.
+ * <p>
+ *
+ * @param certificate
+ * the {@code Certificate} to be removed.
+ * @throws KeyManagementException
+ * if the certificate is not found.
+ * @throws SecurityException
+ * if a {@code SecurityManager} is installed and the caller does
+ * not have permission to invoke this method.
+ */
public void removeCertificate(Certificate certificate)
throws KeyManagementException {
SecurityManager sm = System.getSecurityManager();
@@ -120,6 +170,13 @@
+ /**
+ * Returns the certificates for this {@code Identity}. External
+ * modifications of the returned array has no impact on this {@code
+ * Identity}.
+ *
+ * @return the {@code Certificates} for this {@code Identity}
+ */
public Certificate[] certificates() {
if (certificates == null) {
return new Certificate[0];
@@ -132,6 +189,19 @@
+ /**
+ * Compares the specified {@code Identity} with this {@code Identity} for
+ * equality and returns {@code true} if the specified object is equal,
+ * {@code false} otherwise.
+ * <p>
+ * To be equal, two {@code Identity} objects need to have the same name and
+ * the same public keys.
+ *
+ * @param identity
+ * the identity to check for equality.
+ * @return {@code true} if the {@code Identity} objects are equal, {@code
+ * false} otherwise.
+ */
protected boolean identityEquals(Identity identity) {
if (!name.equals(identity.name)) {
return false;
@@ -147,6 +217,14 @@
+ /**
+ * Returns a string containing a concise, human-readable description of the
+ * this {@code Identity}.
+ *
+ * @param detailed
+ * whether or not this method should return detailed information.
+ * @return a printable representation for this {@code Permission}.
+ */
public String toString(boolean detailed) {
String s = toString();
if (detailed) {
@@ -158,6 +236,11 @@
+ /**
+ * Returns the {@code IdentityScope} of this {@code Identity}.
+ *
+ * @return the {@code IdentityScope} of this {@code Identity}.
+ */
public final IdentityScope getScope() {
return scope;
}
@@ -165,6 +248,22 @@
+ /**
+ * Sets the specified {@code PublicKey} to this {@code Identity}.
+ * <p>
+ * If a {@code SecurityManager} is installed, code calling this method needs
+ * the {@code SecurityPermission} {@code setIdentityPublicKey} to be
+ * granted, otherwise a {@code SecurityException} will be thrown.
+ *
+ * @param key
+ * the {@code PublicKey} to be set.
+ * @throws KeyManagementException
+ * if another {@code Identity} in the same scope as this {@code
+ * Identity} already has the same {@code PublicKey}.
+ * @throws SecurityException
+ * if a {@code SecurityManager} is installed and the caller does
+ * not have permission to invoke this method.
+ */
public void setPublicKey(PublicKey key) throws KeyManagementException {
SecurityManager sm = System.getSecurityManager();
if (sm != null) {
@@ -185,6 +284,11 @@
+ /**
+ * Returns the {@code PublicKey} associated with this {@code Identity}.
+ *
+ * @return the {@code PublicKey} associated with this {@code Identity}.
+ */
public PublicKey getPublicKey() {
return publicKey;
}
@@ -192,6 +296,19 @@
+ /**
+ * Sets an information string for this {@code Identity}.
+ * <p>
+ * If a {@code SecurityManager} is installed, code calling this method needs
+ * the {@code SecurityPermission} {@code setIdentityInfo} to be granted,
+ * otherwise a {@code SecurityException} will be thrown.
+ *
+ * @param info
+ * the information to be set.
+ * @throws SecurityException
+ * if a {@code SecurityManager} is installed and the caller does
+ * not have permission to invoke this method.
+ */
public void setInfo(String info) {
SecurityManager sm = System.getSecurityManager();
if (sm != null) {
@@ -203,6 +320,11 @@
+ /**
+ * Returns the information string of this {@code Identity}.
+ *
+ * @return the information string of this {@code Identity}.
+ */
public String getInfo() {
return info;
}
@@ -210,6 +332,18 @@
+ /**
+ * Compares the specified object with this {@code Identity} for equality and
+ * returns {@code true} if the specified object is equal, {@code false}
+ * otherwise. {@code Identity} objects are considered equal, if they have
+ * the same name and are in the same scope.
+ *
+ * @param obj
+ * object to be compared for equality with this {@code
+ * Identity}.
+ * @return {@code true} if the specified object is equal to this {@code
+ * Identity}, otherwise {@code false}.
+ */
public final boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -228,6 +362,11 @@
+ /**
+ * Returns the name of this {@code Identity}.
+ *
+ * @return the name of this {@code Identity}.
+ */
public final String getName() {
return name;
}
@@ -235,6 +374,15 @@
+ /**
+ * Returns the hash code value for this {@code Identity}. Returns the same
+ * hash code for {@code Identity}s that are equal to each other as required
+ * by the general contract of {@link Object#hashCode}.
+ *
+ * @return the hash code value for this {@code Identity}.
+ * @see Object#equals(Object)
+ * @see Identity#equals(Object)
+ */
public int hashCode() {
int hash = 0;
if (name != null) {
@@ -249,6 +397,19 @@
+ /**
+ * Returns a string containing a concise, human-readable description of the
+ * this {@code Identity} including its name and its scope.
+ * <p>
+ * If a {@code SecurityManager} is installed, code calling this method
+ * needs the {@code SecurityPermission} {@code printIdentity} to be granted,
+ * otherwise a {@code SecurityException} will be thrown.
+ *
+ * @return a printable representation for this {@code Identity}.
+ * @throws SecurityException
+ * if a {@code SecurityManager} is installed and the caller does
+ * not have permission to invoke this method.
+ */
public String toString() {
SecurityManager sm = System.getSecurityManager();
if (sm != null) {
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/IdentityScope.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/IdentityScope.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/IdentityScope.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/IdentityScope.java Tue Apr 28 17:01:41 2009
@@ -15,47 +15,54 @@
* limitations under the License.
*/
-/**
-* @author Aleksei Y. Semenov
-* @version $Revision$
-*/
-
package java.security;
import java.util.Enumeration;
/**
- * @com.intel.drl.spec_ref
- * @deprecated
+ * {@code IdentityScope} represents a scope for {@link Identity} objects.
+ *
+ * @deprecated The functionality of this class has been replace by
+ * {@link Principal}, {@link KeyStore} and the {@code
+ * java.security.cert} package.
*/
@Deprecated
public abstract class IdentityScope extends Identity {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = -2337346281189773310L;
// systemScope holds reference to the current system scope
private static IdentityScope systemScope;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code IdentityScope}.
*/
protected IdentityScope() {
super();
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code IdentityScope} with the specified
+ * name.
+ *
+ * @param name
+ * the name of this {@code IdentityScope}.
*/
public IdentityScope(String name) {
super(name);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code IdentityScope} with the specified
+ * name and the specified scope.
+ *
+ * @param name
+ * the name of this {@code IdentityScope}.
+ * @param scope
+ * the scope of this {@code IdentityScope}.
+ * @throws KeyManagementException
+ * if an identity with the same key already exists.
*/
public IdentityScope(String name, IdentityScope scope)
throws KeyManagementException {
@@ -63,7 +70,9 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the system's scope.
+ *
+ * @return the system's scope.
*/
public static IdentityScope getSystemScope() {
/*
@@ -89,7 +98,10 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the system's scope.
+ *
+ * @param scope
+ * the scope to set.
*/
protected static void setSystemScope(IdentityScope scope) {
SecurityManager sm = System.getSecurityManager();
@@ -100,46 +112,87 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the number of {@code Identity} objects in this scope.
+ *
+ * @return the number of {@code Identity} objects in this scope.
*/
public abstract int size();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code Identity} with the specified name or {@code null} if
+ * no {@code Identity} with the specified name is present in this scope.
+ *
+ * @param name
+ * the name of the {@code Identity} to be returned.
+ * @return the {@code Identity} with the specified name or {@code null} if
+ * not present.
*/
public abstract Identity getIdentity(String name);
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code Identity} with the name of the specified principal or
+ * {@code null} if no {@code Identity} with the name of the specified
+ * principal is present in this scope.
+ *
+ * @param principal
+ * the {@code Principal} whose name is used to lookup the {@code
+ * Identity} to be returned.
+ * @return the {@code Identity} with the specified name or {@code null} if
+ * not present.
*/
public Identity getIdentity(Principal principal) {
return getIdentity(principal.getName());
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code Identity} which is associated with the specified key
+ * or {@code null} if no {@code Identity} associated with the specified key
+ * is present in this scope.
+ *
+ * @param key
+ * the {@code PublicKey} of the {@code Identity} to be returned.
+ * @return the {@code Identity} associated with the specified key or {@code
+ * null} if not present.
*/
public abstract Identity getIdentity(PublicKey key);
/**
- * @com.intel.drl.spec_ref
+ * Adds an {@code Identity} to this {@code IdentityScope}.
+ *
+ * @param identity
+ * the {@code Identity} to be added.
+ * @throws KeyManagementException
+ * if the specified {@code Identity} is invalid or an identity
+ * with the same key already exists.
*/
public abstract void addIdentity(Identity identity)
throws KeyManagementException;
/**
- * @com.intel.drl.spec_ref
+ * Removes an {@code Identity} from this {@code IdentityScope}.
+ *
+ * @param identity
+ * the {@code Identity} to be removed.
+ * @throws KeyManagementException
+ * if the {@code Identity} is not present in this scope.
*/
public abstract void removeIdentity(Identity identity)
throws KeyManagementException;
/**
- * @com.intel.drl.spec_ref
+ * Returns an {@code Enumeration} over the {@code Identity} objects in this
+ * {@code IdentityScope}.
+ *
+ * @return an {@code Enumeration} over the {@code Identity} objects in this
+ * {@code IdentityScope}.
*/
public abstract Enumeration<Identity> identities();
/**
- * @com.intel.drl.spec_ref
+ * Returns a string containing a concise, human-readable description of this
+ * {@code IdentityScope}.
+ *
+ * @return a printable representation for this {@code IdentityScope}.
*/
public String toString() {
return new StringBuffer(super.toString())
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidAlgorithmParameterException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidAlgorithmParameterException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidAlgorithmParameterException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidAlgorithmParameterException.java Tue Apr 28 17:01:41 2009
@@ -15,52 +15,53 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * This class represents invalid algorithm parameters to cryptographic services.
- *
+ * {@code InvalidAlgorithmParameterException} indicates the occurrence of
+ * invalid algorithm parameters.
*/
public class InvalidAlgorithmParameterException extends
GeneralSecurityException {
- /**
- * @com.intel.drl.spec_ref
- */
+
private static final long serialVersionUID = 2864672297499471472L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code InvalidAlgorithmParameterException}
+ * with the given message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public InvalidAlgorithmParameterException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code InvalidAlgorithmParameterException}.
+ */
public InvalidAlgorithmParameterException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code InvalidAlgorithmParameterException} with the
+ * given message and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public InvalidAlgorithmParameterException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code InvalidAlgorithmParameterException}
+ * with the cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public InvalidAlgorithmParameterException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidKeyException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidKeyException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidKeyException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidKeyException.java Tue Apr 28 17:01:41 2009
@@ -15,54 +15,51 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * Used when invalid cryptography keys are used.
- *
- * @see Throwable
- * @see Error
+ * {@code InvalidKeyException} indicates exceptional conditions, caused by an
+ * invalid key.
*/
public class InvalidKeyException extends KeyException {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = 5698479920593359816L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code InvalidKeyException} with the given
+ * message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public InvalidKeyException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code InvalidKeyException}.
+ */
public InvalidKeyException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code InvalidKeyException} with the given
+ * message and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public InvalidKeyException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code InvalidKeyException} with the cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public InvalidKeyException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidParameterException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidParameterException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidParameterException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/InvalidParameterException.java Tue Apr 28 17:01:41 2009
@@ -15,40 +15,30 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * This exception is thrown when an invalid parameter is passed to a method.
- *
+ * {@code InvalidParameterException} indicates exceptional conditions, caused by
+ * invalid parameters.
*/
public class InvalidParameterException extends IllegalArgumentException {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = -857968536935667808L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code InvalidParameterException} with the
+ * given message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public InvalidParameterException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code InvalidParameterException}.
+ */
public InvalidParameterException() {
}
}
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Key.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Key.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Key.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/Key.java Tue Apr 28 17:01:41 2009
@@ -15,46 +15,46 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
import java.io.Serializable;
/**
- * Defines the basic properties of all key objects.
+ * {@code Key} is the common interface for all keys.
*
* @see PublicKey
+ * @see PrivateKey
*/
public interface Key extends Serializable {
/**
- * @com.intel.drl.spec_ref
+ * The {@code serialVersionUID} to be compatible with JDK1.1.
*/
public static final long serialVersionUID = 6603384152749567654L;
/**
- * Answers the name of the algorithm that this key will work
- * with. If the algorithm is unknown, it answers null.
+ * Returns the name of the algorithm of this key. If the algorithm is
+ * unknown, {@code null} is returned.
*
- * @return String the receiver's algorithm
+ * @return the name of the algorithm of this key or {@code null} if the
+ * algorithm is unknown.
*/
public String getAlgorithm();
/**
- * Answers the name of the format used to encode the key, or null
+ * Returns the name of the format used to encode this key, or {@code null}
* if it can not be encoded.
*
- * @return String the receiver's encoding format
+ * @return the name of the format used to encode this key, or {@code null}
+ * if it can not be encoded.
*/
public String getFormat();
/**
- * Answers the encoded form of the receiver.
+ * Returns the encoded form of this key, or {@code null} if encoding is not
+ * supported by this key.
*
- * @return byte[] the encoded form of the receiver
+ * @return the encoded form of this key, or {@code null} if encoding is not
+ * supported by this key.
*/
public byte[] getEncoded();
}
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyException.java Tue Apr 28 17:01:41 2009
@@ -15,56 +15,49 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * This class is the superclass of all classes which represent problems with
- * keys.
- *
- *
- * @see Throwable
- * @see Error
+ * {@code KeyException} is the common superclass of all key related exceptions.
*/
public class KeyException extends GeneralSecurityException {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = -7483676942812432108L;
- /**
- * Constructs a new instance of this class with its walkback and message
- * filled in.
- *
- *
- * @param msg
- * String The detail message for the exception.
- */
+ /**
+ * Constructs a new instance of {@code KeyException} with the given message.
+ *
+ * @param msg
+ * the detail message for this exception.
+ */
public KeyException(String msg) {
super(msg);
}
- /**
- * Constructs a new instance of this class with its walkback filled in.
- *
- */
+ /**
+ * Constructs a new instance of {@code KeyException}.
+ */
public KeyException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyException} with the given message
+ * and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public KeyException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyException} with the cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public KeyException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactory.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactory.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactory.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactory.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Boris V. Kuznetsov
-* @version $Revision$
-*/
-
package java.security;
import java.security.spec.InvalidKeySpecException;
@@ -28,12 +23,12 @@
import org.apache.harmony.security.fortress.Engine;
import org.apache.harmony.security.internal.nls.Messages;
-
/**
- * @com.intel.drl.spec_ref
- *
+ * {@code KeyFactory} is an engine class that can be used to translate between
+ * public and private key objects and convert keys between their external
+ * representation, that can be easily transported and their internal
+ * representation.
*/
-
public class KeyFactory {
// The service name.
private static final String SERVICE = "KeyFactory"; //$NON-NLS-1$
@@ -52,8 +47,15 @@
private String algorithm;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyFactory} with the specified
+ * arguments.
*
+ * @param keyFacSpi
+ * the concrete key factory service.
+ * @param provider
+ * the provider.
+ * @param algorithm
+ * the algorithm to use.
*/
protected KeyFactory(KeyFactorySpi keyFacSpi,
Provider provider,
@@ -64,8 +66,15 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm.
*
+ * @param algorithm
+ * the name of the algorithm.
+ * @return a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm.
+ * @throws NoSuchAlgorithmException
+ * if no provider provides the requested algorithm.
*/
public static KeyFactory getInstance(String algorithm)
throws NoSuchAlgorithmException {
@@ -79,8 +88,21 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm from the specified provider.
*
+ * @param algorithm
+ * the name of the algorithm.
+ * @param provider
+ * the name of the provider.
+ * @return a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm from the specified provider.
+ * @throws NoSuchAlgorithmException
+ * if the provider does not provide the requested algorithm.
+ * @throws NoSuchProviderException
+ * if the requested provider is not available.
+ * @throws IllegalArgumentException
+ * if {@code provider} is {@code null} or empty.
*/
public static KeyFactory getInstance(String algorithm, String provider)
throws NoSuchAlgorithmException, NoSuchProviderException {
@@ -95,8 +117,17 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm from the specified provider.
*
+ * @param algorithm
+ * the name of the algorithm.
+ * @param provider
+ * the security provider.
+ * @return a new instance of {@code KeyFactory} that utilizes the specified
+ * algorithm from the specified provider.
+ * @throws NoSuchAlgorithmException
+ * if the provider does not provide the requested algorithm.
*/
public static KeyFactory getInstance(String algorithm, Provider provider)
throws NoSuchAlgorithmException {
@@ -113,24 +144,34 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the provider associated with this {@code KeyFactory}.
*
+ * @return the provider associated with this {@code KeyFactory}.
*/
public final Provider getProvider() {
return provider;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the name of the algorithm associated with this {@code
+ * KeyFactory}.
*
+ * @return the name of the algorithm associated with this {@code
+ * KeyFactory}.
*/
public final String getAlgorithm() {
return algorithm;
}
/**
- * @com.intel.drl.spec_ref
+ * Generates a instance of {@code PublicKey} from the given key
+ * specification.
*
+ * @param keySpec
+ * the specification of the public key
+ * @return the public key
+ * @throws InvalidKeySpecException
+ * if the specified {@code keySpec} is invalid
*/
public final PublicKey generatePublic(KeySpec keySpec)
throws InvalidKeySpecException {
@@ -138,8 +179,14 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Generates a instance of {@code PrivateKey} from the given key
+ * specification.
*
+ * @param keySpec
+ * the specification of the private key.
+ * @return the private key.
+ * @throws InvalidKeySpecException
+ * if the specified {@code keySpec} is invalid.
*/
public final PrivateKey generatePrivate(KeySpec keySpec)
throws InvalidKeySpecException {
@@ -147,8 +194,16 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the key specification for the specified key.
*
+ * @param key
+ * the key from which the specification is requested.
+ * @param keySpec
+ * the type of the requested {@code KeySpec}.
+ * @return the key specification for the specified key.
+ * @throws InvalidKeySpecException
+ * if the key can not be processed, or the requested requested
+ * {@code KeySpec} is inappropriate for the given key.
*/
public final <T extends KeySpec> T getKeySpec(Key key,
Class<T> keySpec)
@@ -157,8 +212,14 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Translates the given key into a key from this key factory.
*
+ * @param key
+ * the key to translate.
+ * @return the translated key.
+ * @throws InvalidKeyException
+ * if the specified key can not be translated by this key
+ * factory.
*/
public final Key translateKey(Key key)
throws InvalidKeyException {
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactorySpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactorySpi.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactorySpi.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyFactorySpi.java Tue Apr 28 17:01:41 2009
@@ -15,49 +15,70 @@
* limitations under the License.
*/
-/**
-* @author Boris V. Kuznetsov
-* @version $Revision$
-*/
-
package java.security;
import java.security.spec.InvalidKeySpecException;
import java.security.spec.KeySpec;
-
/**
- * @com.intel.drl.spec_ref
+ * {@code KeyFactorySpi} is the Service Provider Interface (SPI) definition for
+ * {@link KeyFactory}.
*
+ * @see KeyFactory
*/
-
public abstract class KeyFactorySpi {
/**
- * @com.intel.drl.spec_ref
+ * Generates a instance of {@code PublicKey} from the given key
+ * specification.
*
+ * @param keySpec
+ * the specification of the public key.
+ * @return the public key.
+ * @throws InvalidKeySpecException
+ * if the specified {@code keySpec} is invalid.
*/
protected abstract PublicKey engineGeneratePublic(KeySpec keySpec)
throws InvalidKeySpecException;
/**
- * @com.intel.drl.spec_ref
+ * Generates a instance of {@code PrivateKey} from the given key
+ * specification.
*
+ * @param keySpec
+ * the specification of the private key.
+ * @return the private key.
+ * @throws InvalidKeySpecException
+ * if the specified {@code keySpec} is invalid.
*/
protected abstract PrivateKey engineGeneratePrivate(KeySpec keySpec)
throws InvalidKeySpecException;
/**
- * @com.intel.drl.spec_ref
+ * Returns the key specification for the specified key.
*
+ * @param key
+ * the key from which the specification is requested.
+ * @param keySpec
+ * the type of the requested {@code KeySpec}.
+ * @return the key specification for the specified key.
+ * @throws InvalidKeySpecException
+ * if the key can not be processed, or the requested requested
+ * {@code KeySpec} is inappropriate for the given key.
*/
protected abstract <T extends KeySpec> T engineGetKeySpec(Key key, Class<T> keySpec)
throws InvalidKeySpecException;
//FIXME 1.5 signature: protected abstract <T extends KeySpec> T engineGetKeySpec(Key key, Class<T> keySpec) throws InvalidKeySpecException
/**
- * @com.intel.drl.spec_ref
+ * Translates the given key into a key from this key factory.
*
+ * @param key
+ * the key to translate.
+ * @return the translated key.
+ * @throws InvalidKeyException
+ * if the specified key can not be translated by this key
+ * factory.
*/
protected abstract Key engineTranslateKey(Key key) throws InvalidKeyException;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyManagementException.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyManagementException.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyManagementException.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyManagementException.java Tue Apr 28 17:01:41 2009
@@ -15,46 +15,52 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
/**
- * @com.intel.drl.spec_ref
- *
+ * {@code KeyManagementException} is a general exception, thrown to indicate an
+ * exception during processing an operation concerning key management.
*/
public class KeyManagementException extends KeyException {
- /**
- * @com.intel.drl.spec_ref
- */
private static final long serialVersionUID = 947674216157062695L;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyManagementException} with the
+ * given message.
+ *
+ * @param msg
+ * the detail message for this exception.
*/
public KeyManagementException(String msg) {
super(msg);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyManagementException}.
*/
public KeyManagementException() {
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyManagementException} with the
+ * given message and the cause.
+ *
+ * @param message
+ * the detail message for this exception.
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public KeyManagementException(String message, Throwable cause) {
super(message, cause);
}
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyManagementException} with the
+ * cause.
+ *
+ * @param cause
+ * the exception which is the cause for this exception.
*/
public KeyManagementException(Throwable cause) {
super(cause);
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPair.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPair.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPair.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPair.java Tue Apr 28 17:01:41 2009
@@ -15,29 +15,31 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security;
import java.io.Serializable;
/**
- * @com.intel.drl.spec_ref
+ * {@code KeyPair} is a container for a public key and a private key. Since the
+ * private key can be accessed, instances must be treated like a private key.
*
+ * @see PrivateKey
+ * @see PublicKey
*/
public final class KeyPair implements Serializable {
- /**
- * @com.intel.drl.spec_ref
- */
+
private static final long serialVersionUID = -7565189502268009837L;
private final PrivateKey privateKey;
private final PublicKey publicKey;
/**
- * @com.intel.drl.spec_ref
+ * Constructs a new instance of {@code KeyPair} with a public key and the
+ * corresponding private key.
+ *
+ * @param publicKey
+ * the public key.
+ * @param privateKey
+ * the private key.
*/
public KeyPair(PublicKey publicKey, PrivateKey privateKey) {
this.privateKey = privateKey;
@@ -45,14 +47,18 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the private key.
+ *
+ * @return the private key.
*/
public PrivateKey getPrivate() {
return privateKey;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the public key.
+ *
+ * @return the public key.
*/
public PublicKey getPublic() {
return publicKey;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGenerator.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGenerator.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGenerator.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGenerator.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
import java.security.spec.AlgorithmParameterSpec;
@@ -29,9 +24,11 @@
/**
- *
- * @com.intel.drl.spec_ref
- *
+ * {@code KeyPairGenerator} is an engine class which is capable of generating a
+ * private key and its related public key utilizing the algorithm it was
+ * initialized with.
+ *
+ * @see KeyPairGeneratorSpi
*/
public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
@@ -51,25 +48,36 @@
private String algorithm;
/**
- * @com.intel.drl.spec_ref
- *
+ * Constructs a new instance of {@code KeyPairGenerator} with the name of
+ * the algorithm to use.
+ *
+ * @param algorithm
+ * the name of algorithm to use
*/
protected KeyPairGenerator(String algorithm) {
this.algorithm = algorithm;
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the name of the algorithm of this {@code KeyPairGenerator}.
+ *
+ * @return the name of the algorithm of this {@code KeyPairGenerator}
*/
public String getAlgorithm() {
return algorithm;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm.
*
- * throws NullPointerException when algorithm is null
+ * @param algorithm
+ * the name of the algorithm to use
+ * @return a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm
+ * @throws NoSuchAlgorithmException if the specified algorithm is not available
+ * @throws NullPointerException
+ * if {@code algorithm} is {@code null}
*/
public static KeyPairGenerator getInstance(String algorithm)
throws NoSuchAlgorithmException {
@@ -93,10 +101,19 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm from the specified provider.
*
- * throws NullPointerException if algorithm is null (instead of
- * NoSuchAlgorithmException) as in 1.4 release
+ * @param algorithm
+ * the name of the algorithm to use
+ * @param provider
+ * the name of the provider
+ * @return a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm from the specified provider
+ * @throws NoSuchAlgorithmException if the specified algorithm is not available
+ * @throws NoSuchProviderException if the specified provider is not available
+ * @throws NullPointerException
+ * if {@code algorithm} is {@code null}
*/
public static KeyPairGenerator getInstance(String algorithm, String provider)
throws NoSuchAlgorithmException, NoSuchProviderException {
@@ -112,10 +129,18 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm from the specified provider.
*
- * throws NullPointerException if algorithm is null (instead of
- * NoSuchAlgorithmException) as in 1.4 release
+ * @param algorithm
+ * the name of the algorithm to use
+ * @param provider
+ * the provider
+ * @return a new instance of {@code KeyPairGenerator} that utilizes the
+ * specified algorithm from the specified provider
+ * @throws NoSuchAlgorithmException if the specified algorithm is not available
+ * @throws NullPointerException
+ * if {@code algorithm} is {@code null}
*/
public static KeyPairGenerator getInstance(String algorithm,
Provider provider) throws NoSuchAlgorithmException {
@@ -142,24 +167,35 @@
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the provider associated with this {@code KeyPairGenerator}.
+ *
+ * @return the provider associated with this {@code KeyPairGenerator}
*/
public final Provider getProvider() {
return provider;
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGenerator} with the given key size. The
+ * default parameter set and a default {@code SecureRandom} instance will be
+ * used.
+ *
+ * @param keysize
+ * the size of the key (number of bits)
*/
public void initialize(int keysize) {
initialize(keysize, random);
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGenerator} with the given {@code
+ * AlgorithmParameterSpec}. A default {@code SecureRandom} instance will be
+ * used.
+ *
+ * @param param
+ * the parameters to use
+ * @throws InvalidAlgorithmParameterException
+ * if the specified parameters are not supported
*/
public void initialize(AlgorithmParameterSpec param)
throws InvalidAlgorithmParameterException {
@@ -167,27 +203,51 @@
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Computes and returns a new unique {@code KeyPair} each time this method
+ * is called.
+ * <p>
+ * This does exactly the same as {@link #generateKeyPair()}.
+ *
+ * @return a new unique {@code KeyPair} each time this method is called
*/
public final KeyPair genKeyPair() {
return generateKeyPair();
}
+ /**
+ * Computes and returns a new unique {@code KeyPair} each time this method
+ * is called.
+ * <p>
+ * This does exactly the same as {@link #genKeyPair()}.
+ *
+ * @return a new unique {@code KeyPair} each time this method is called
+ */
public KeyPair generateKeyPair() {
return null;
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGenerator} with the given key size and the
+ * given {@code SecureRandom}. The default parameter set will be used.
+ *
+ * @param keysize
+ * the key size
+ * @param random
+ * the source of randomness
*/
public void initialize(int keysize, SecureRandom random) {
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGenerator} with the given {@code
+ * AlgorithmParameterSpec} and the given {@code SecureRandom}.
+ *
+ * @param param
+ * the parameters to use
+ * @param random
+ * the source of randomness
+ * @throws InvalidAlgorithmParameterException
+ * if the specified parameters are not supported
*/
public void initialize(AlgorithmParameterSpec param, SecureRandom random)
throws InvalidAlgorithmParameterException {
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGeneratorSpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGeneratorSpi.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGeneratorSpi.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/KeyPairGeneratorSpi.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security;
import java.security.spec.AlgorithmParameterSpec;
@@ -27,33 +22,47 @@
import org.apache.harmony.security.internal.nls.Messages;
/**
- * @com.intel.drl.spec_ref
+ * {@code KeyPairGeneratorSpi} is the Service Provider Interface (SPI)
+ * definition for {@link KeyPairGenerator}.
*
+ * @see KeyPairGenerator
*/
-
public abstract class KeyPairGeneratorSpi {
/**
- * @com.intel.drl.spec_ref
- *
+ * Constructs a new instance of {@code KeyPairGeneratorSpi}.
*/
public KeyPairGeneratorSpi() {
}
/**
- * @com.intel.drl.spec_ref
- *
+ * Computes and returns a new unique {@code KeyPair} each time this method
+ * is called.
+ *
+ * @return a new unique {@code KeyPair} each time this method is called.
*/
public abstract KeyPair generateKeyPair();
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGeneratorSpi} with the given key size and
+ * the given {@code SecureRandom}. The default parameter set will be used.
+ *
+ * @param keysize
+ * the key size (number of bits).
+ * @param random
+ * the source of randomness.
*/
public abstract void initialize(int keysize, SecureRandom random);
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this {@code KeyPairGeneratorSpi} with the given {@code
+ * AlgorithmParameterSpec} and the given {@code SecureRandom}.
+ *
+ * @param params
+ * the parameters to use.
+ * @param random
+ * the source of randomness.
+ * @throws InvalidAlgorithmParameterException
+ * if the specified parameters are not supported.
*/
public void initialize(AlgorithmParameterSpec params, SecureRandom random)
throws InvalidAlgorithmParameterException {