aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/security/cert/CertificateFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/security/cert/CertificateFactory.java')
-rw-r--r--libjava/java/security/cert/CertificateFactory.java259
1 files changed, 0 insertions, 259 deletions
diff --git a/libjava/java/security/cert/CertificateFactory.java b/libjava/java/security/cert/CertificateFactory.java
deleted file mode 100644
index b5fe2e3518e..00000000000
--- a/libjava/java/security/cert/CertificateFactory.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/* CertificateFactory.java --- Certificate Factory Class
- Copyright (C) 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA.
-
-As a special exception, if you link this library with other files to
-produce an executable, this library does not by itself cause the
-resulting executable to be covered by the GNU General Public License.
-This exception does not however invalidate any other reasons why the
-executable file might be covered by the GNU General Public License. */
-
-
-package java.security.cert;
-import java.security.NoSuchProviderException;
-import java.security.Provider;
-import java.security.Security;
-import java.io.InputStream;
-import java.util.Collection;
-
-/**
- This class implments the CertificateFactory class interface
- used to generate certificates and certificate revocation
- list (CRL) objects from their encodings.
-
- A certifcate factory for X.509 returns certificates of the
- java.security.cert.X509Certificate class, and CRLs of the
- java.security.cert.X509CRL class.
-
- @since JDK 1.2
-
- @author Mark Benvenuto
-*/
-public class CertificateFactory
-{
-
- private CertificateFactorySpi certFacSpi;
- private Provider provider;
- private String type;
-
- /**
- Creates an instance of CertificateFactory
-
- @param certFacSpi A CertificateFactory engine to use
- @param provider A provider to use
- @param type The type of Certificate
- */
- protected CertificateFactory(CertificateFactorySpi certFacSpi, Provider provider, String type)
- {
- this.certFacSpi = certFacSpi;
- this.provider = provider;
- this.type = type;
- }
-
-
- /**
- Gets an instance of the CertificateFactory class representing
- the specified certificate factory. If the type is not
- found then, it throws CertificateException.
-
- @param type the type of certificate to choose
-
- @return a CertificateFactory repesenting the desired type
-
- @throws CertificateException if the type of certificate is not implemented by providers
- */
- public static final CertificateFactory getInstance(String type) throws CertificateException
- {
- Provider[] p = Security.getProviders ();
-
- for (int i = 0; i < p.length; i++)
- {
- String classname = p[i].getProperty ("CertificateFactory." + type);
- if (classname != null)
- return getInstance (classname, type, p[i]);
- }
-
- throw new CertificateException(type);
- }
-
-
-
- /**
- Gets an instance of the CertificateFactory class representing
- the specified certificate factory from the specified provider.
- If the type is not found then, it throws CertificateException.
- If the provider is not found, then it throws
- NoSuchProviderException.
-
- @param type the type of certificate to choose
-
- @return a CertificateFactory repesenting the desired type
-
- @throws CertificateException if the type of certificate is not implemented by providers
- @throws NoSuchProviderException if the provider is not found
- */
- public static final CertificateFactory getInstance(String type, String provider)
- throws CertificateException, NoSuchProviderException
- {
- Provider p = Security.getProvider(provider);
- if( p == null)
- throw new NoSuchProviderException();
-
- return getInstance (p.getProperty ("CertificateFactory." + type),
- type, p);
- }
-
- private static CertificateFactory getInstance (String classname,
- String type,
- Provider provider)
- throws CertificateException
- {
- try {
- return new CertificateFactory( (CertificateFactorySpi)Class.forName( classname ).newInstance(), provider, type );
- } catch( ClassNotFoundException cnfe) {
- throw new CertificateException("Class not found");
- } catch( InstantiationException ie) {
- throw new CertificateException("Class instantiation failed");
- } catch( IllegalAccessException iae) {
- throw new CertificateException("Illegal Access");
- }
- }
-
-
- /**
- Gets the provider that the class is from.
-
- @return the provider of this class
- */
- public final Provider getProvider()
- {
- return provider;
- }
-
- /**
- Returns the type of the certificate supported
-
- @return A string with the type of certificate
- */
- public final String getType()
- {
- return type;
- }
-
- /**
- Generates a Certificate based on the encoded data read
- from the InputStream.
-
- The input stream must contain only one certificate.
-
- If there exists a specialized certificate class for the
- certificate format handled by the certificate factory
- then the return Ceritificate should be a typecast of it.
- Ex: A X.509 CertificateFactory should return X509Certificate.
-
- For X.509 certificates, the certificate in inStream must be
- DER encoded and supplied in binary or printable (Base64)
- encoding. If the certificate is in Base64 encoding, it must be
- bounded by -----BEGINCERTIFICATE-----, and
- -----END CERTIFICATE-----.
-
- @param inStream an input stream containing the certificate data
-
- @return a certificate initialized with InputStream data.
-
- @throws CertificateException Certificate parsing error
- */
- public final Certificate generateCertificate(InputStream inStream)
- throws CertificateException
- {
- return certFacSpi.engineGenerateCertificate( inStream );
- }
-
- /**
- Returns a collection of certificates that were read from the
- input stream. It may be empty, have only one, or have
- multiple certificates.
-
- For a X.509 certificate factory, the stream may contain a
- single DER encoded certificate or a PKCS#7 certificate
- chain. This is a PKCS#7 <I>SignedData</I> object with the
- most significant field being <I>certificates</I>. If no
- CRLs are present, then an empty collection is returned.
-
- @param inStream an input stream containing the certificates
-
- @return a collection of certificates initialized with
- the InputStream data.
-
- @throws CertificateException Certificate parsing error
- */
- public final Collection generateCertificates(InputStream inStream)
- throws CertificateException
- {
- return certFacSpi.engineGenerateCertificates( inStream );
- }
-
- /**
- Generates a CRL based on the encoded data read
- from the InputStream.
-
- The input stream must contain only one CRL.
-
- If there exists a specialized CRL class for the
- CRL format handled by the certificate factory
- then the return CRL should be a typecast of it.
- Ex: A X.509 CertificateFactory should return X509CRL.
-
- @param inStream an input stream containing the CRL data
-
- @return a CRL initialized with InputStream data.
-
- @throws CRLException CRL parsing error
- */
- public final CRL generateCRL(InputStream inStream)
- throws CRLException
- {
- return certFacSpi.engineGenerateCRL( inStream );
- }
-
-
- /**
- Generates CRLs based on the encoded data read
- from the InputStream.
-
- For a X.509 certificate factory, the stream may contain a
- single DER encoded CRL or a PKCS#7 CRL set. This is a
- PKCS#7 <I>SignedData</I> object with the most significant
- field being <I>crls</I>. If no CRLs are present, then an
- empty collection is returned.
-
- @param inStream an input stream containing the CRLs
-
- @return a collection of CRLs initialized with
- the InputStream data.
-
- @throws CRLException CRL parsing error
- */
- public final Collection generateCRLs(InputStream inStream)
- throws CRLException
- {
- return certFacSpi.engineGenerateCRLs( inStream );
- }
-
-}