public abstract class CertPath extends Object implements Serializable
cert.getType().equals(certpath.getType())
will return true.
Since this class is immutable, it is thread-safe. During serialization,
the path is consolidated into a CertPath.CertPathRep
, which preserves the
data regardless of the underlying implementation of the path.
Modifier and Type | Class and Description |
---|---|
protected static class |
CertPath.CertPathRep
The serialized representation of a path.
|
Modifier | Constructor and Description |
---|---|
protected |
CertPath(String type)
Create a certificate path with the given type.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o)
Compares this path to another for semantic equality.
|
abstract List<? extends Certificate> |
getCertificates()
Returns the immutable, thread-safe list of certificates in this path.
|
abstract byte[] |
getEncoded()
Returns the encoded form of this path, via the default encoding.
|
abstract byte[] |
getEncoded(String encoding)
Returns the encoded form of this path, via the specified encoding.
|
abstract Iterator<String> |
getEncodings()
Get an immutable iterator over the path encodings (all String names),
starting with the default encoding.
|
String |
getType()
Get the (non-null) type of all certificates in the path.
|
int |
hashCode()
Returns the hashcode of this certificate path.
|
String |
toString()
Convert this Object to a human-readable String.
|
protected Object |
writeReplace()
Serializes the path in its encoded form, to ensure reserialization with
the appropriate factory object without worrying about list implementation.
|
protected CertPath(String type)
CertificateFactory
to create CertPaths.type
- the type of the pathpublic String getType()
public abstract Iterator<String> getEncodings()
UnsupportedOperationException
if an attempt is made to
remove items from the list.public boolean equals(Object o)
equals
in class Object
o
- the object to compare toObject.hashCode()
public int hashCode()
31 * getType().hashCode() + getCertificates().hashCode()
.hashCode
in class Object
Object.equals(Object)
,
System.identityHashCode(Object)
public String toString()
Object
System.out.println()
and such.
It is typical, but not required, to ensure that this method
never completes abruptly with a RuntimeException
.
This method will be called when performing string
concatenation with this object. If the result is
null
, string concatenation will instead
use "null"
.
The default implementation returns
getClass().getName() + "@" +
Integer.toHexString(hashCode())
.
toString
in class Object
Object.getClass()
,
Object.hashCode()
,
Class.getName()
,
Integer.toHexString(int)
public abstract byte[] getEncoded() throws CertificateEncodingException
CertificateEncodingException
- if encoding failspublic abstract byte[] getEncoded(String encoding) throws CertificateEncodingException
encoding
- the encoding to useCertificateEncodingException
- if encoding fails or does not existpublic abstract List<? extends Certificate> getCertificates()
protected Object writeReplace() throws ObjectStreamException
CertPath.CertPathRep
.ObjectStreamException
- if the replacement creation fails