public class CertificateFactory extends Object
Constructor and Description |
---|
CertificateFactory() |
Modifier and Type | Method and Description |
---|---|
Certificate |
generateCertificate(InputStream inStream)
Generates a certificate object and initializes it with the data read from the input stream
inStream . |
static CertificateFactory |
getInstance(String type)
Returns a certificate factory object that implements the specified certificate type.
|
String |
getType()
Returns the name of the certificate type associated with this certificate factory.
|
public static final CertificateFactory getInstance(String type) throws CertificateException
This method traverses the list of registered security Providers, starting with the most preferred Provider. A new CertificateFactory object encapsulating the CertificateFactorySpi implementation from the first Provider that supports the specified type is returned.
type
- the name of the requested certificate type. See the CertificateFactory section in the
Java
Cryptography Architecture Standard Algorithm Name Documentation for information about standard
certificate types.CertificateException
- if no Provider supports a CertificateFactorySpi implementation for the specified type.public final String getType()
public final Certificate generateCertificate(InputStream inStream) throws CertificateException
inStream
.
In order to take advantage of the specialized certificate format supported by this certificate factory, the
returned certificate object can be typecast to the corresponding certificate class. For example, if this
certificate factory implements X.509 certificates, the returned certificate object can be typecast to the
X509Certificate
class.
In the case of a certificate factory for X.509 certificates, the certificate provided in inStream
must be
DER-encoded and may be supplied in binary or printable (Base64) encoding. If the certificate is provided in
Base64 encoding, it must be bounded at the beginning by -----BEGIN CERTIFICATE-----, and must be bounded at the
end by -----END CERTIFICATE-----.
Note that if the given input stream does not support mark
and
reset
, this method will consume the entire input stream. Otherwise, each call
to this method consumes one certificate and the read position of the input stream is positioned to the next
available byte after the inherent end-of-certificate marker. If the data in the input stream does not contain an
inherent end-of-certificate marker (other than EOF) and there is trailing data after the certificate is parsed, a
CertificateException
is thrown.
inStream
- an input stream with the certificate data.CertificateException
- on parsing errors.