From 441c77991340c51604639124d611a38fed1c5292 Mon Sep 17 00:00:00 2001 From: Joerg Brunsmann Date: Mon, 18 Nov 2002 18:09:35 +0000 Subject: [PATCH] KeyStore.java (getInstance): Fix comment and throw IllegalArgumentException if given provider is null. 2002-11-18 Joerg Brunsmann * java/security/KeyStore.java (getInstance): Fix comment and throw IllegalArgumentException if given provider is null. (getInstance): New method for jdk1.4 compatibility. From-SVN: r59226 --- libjava/ChangeLog | 7 +++++ libjava/java/security/KeyStore.java | 45 +++++++++++++++++++++++++---- 2 files changed, 46 insertions(+), 6 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 9f462c3caf2..bc8774b6a00 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,10 @@ +2002-11-18 Joerg Brunsmann + + * java/security/KeyStore.java (getInstance): Fix + comment and throw IllegalArgumentException if + given provider is null. + (getInstance): New method for jdk1.4 compatibility. + 2002-11-18 Michael Koch * java/net/PlainSocketImpl.java: Fix imports. diff --git a/libjava/java/security/KeyStore.java b/libjava/java/security/KeyStore.java index e7c80716c40..1627bc5610a 100644 --- a/libjava/java/security/KeyStore.java +++ b/libjava/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) -- 2.30.2