summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2002-11-18 18:04:37 +0000
committerTom Tromey <tromey@redhat.com>2002-11-18 18:04:37 +0000
commit77f1e81616087c07302cc0d8573d61e652cbba04 (patch)
treefafa5e051be1b96a99892439e691f542c6f46895 /java
parentf917ebf14cd0e07719f74ea00d25f5f6e6d645df (diff)
downloadclasspath-77f1e81616087c07302cc0d8573d61e652cbba04.tar.gz
2002-11-18 Joerg Brunsmann <joerg_brunsmann@yahoo.de>
* java/security/KeyStore.java (getInstance): Fix comment and throw IllegalArgumentException if given provider is null. (getInstance): New method for jdk1.4 compatibility.
Diffstat (limited to 'java')
-rw-r--r--java/security/KeyStore.java45
1 files changed, 39 insertions, 6 deletions
diff --git a/java/security/KeyStore.java b/java/security/KeyStore.java
index e7c80716c..1627bc561 100644
--- a/java/security/KeyStore.java
+++ b/java/security/KeyStore.java
@@ -1,5 +1,5 @@
/* KeyStore.java --- Key Store Class
- Copyright (C) 1999 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -92,9 +92,9 @@ public class KeyStore
/**
Gets an instance of the KeyStore class representing
the specified keystore. If the type is not
- found then, it throws CertificateException.
+ found then, it throws KeyStoreException.
- @param type the type of certificate to choose
+ @param type the type of keystore to choose
@return a KeyStore repesenting the desired type
@@ -117,20 +117,26 @@ public class KeyStore
/**
Gets an instance of the KeyStore class representing
the specified key store from the specified provider.
- If the type is not found then, it throws CertificateException.
+ If the type is not found then, it throws KeyStoreException.
If the provider is not found, then it throws
NoSuchProviderException.
- @param type the type of certificate to choose
+ @param type the type of keystore to choose
+ @param provider the provider name
@return a KeyStore repesenting the desired type
- @throws KeyStoreException if the type of keystore is not implemented by providers
+ @throws KeyStoreException if the type of keystore is not
+ implemented by the given provider
@throws NoSuchProviderException if the provider is not found
+ @throws IllegalArgumentException if the provider string is
+ null or empty
*/
public static KeyStore getInstance(String type, String provider)
throws KeyStoreException, NoSuchProviderException
{
+ if (provider == null || provider.length() == 0)
+ throw new IllegalArgumentException("Illegal provider");
Provider p = Security.getProvider(provider);
if (p == null)
throw new NoSuchProviderException();
@@ -138,6 +144,33 @@ public class KeyStore
return getInstance(p.getProperty("KeyStore." + type), type, p);
}
+ /**
+ Gets an instance of the KeyStore class representing
+ the specified key store from the specified provider.
+ If the type is not found then, it throws KeyStoreException.
+ If the provider is not found, then it throws
+ NoSuchProviderException.
+
+ @param type the type of keystore to choose
+ @param provider the keystore provider
+
+ @return a KeyStore repesenting the desired type
+
+ @throws KeyStoreException if the type of keystore is not
+ implemented by the given provider
+ @throws IllegalArgumentException if the provider object is null
+ @since 1.4
+ */
+ public static KeyStore getInstance(String type, Provider provider)
+ throws KeyStoreException
+ {
+ if (provider == null)
+ throw new IllegalArgumentException("Illegal provider");
+
+ return getInstance(provider.getProperty("KeyStore." + type),
+ type, provider);
+ }
+
private static KeyStore getInstance(String classname,
String type,
Provider provider)