com.ibm.security.pkcs9
Class FriendlyName

java.lang.Object
  |
  +--com.ibm.security.pkcsutil.PKCSDerObject
        |
        +--com.ibm.security.pkcs9.PKCS9DerObject
              |
              +--com.ibm.security.pkcs9.FriendlyName

public final class FriendlyName
extends PKCS9DerObject
implements Cloneable

Implements the ASN.1 FriendlyName type.

A FriendlyName attribute must have a single attribute value.

FriendlyName ::= BMPString

FriendlyName objects are immutable; they cannot be changed once created.


Fields inherited from class com.ibm.security.pkcsutil.PKCSDerObject
provider
 
Constructor Summary
FriendlyName(byte[] der)
          Create a FriendlyName object with a DER byte array.
FriendlyName(byte[] der, String provider)
          Create a FriendlyName object with a DER byte array.
FriendlyName(String name)
          Create a FriendlyName object with the given name.
FriendlyName(String filename, boolean base64)
          Create a FriendlyName with the filename of the DER-encoded or BASE64-encoded object.
FriendlyName(String filename, boolean base64, String provider)
          Create a FriendlyName with the filename of the DER-encoded or BASE64-encoded object.
FriendlyName(String name, String provider)
          Create a FriendlyName object with the given name.
 
Method Summary
 Object clone()
          Creates a clone of this FriendlyName object.
protected  void decode(com.ibm.security.pkcs9.DerValue encoding)
          Initializes a FriendlyName object from a DerValue.
 void encode(OutputStream os)
          Encodes this object to an OutputStream.
 boolean equals(Object obj)
          Determines if this FriendlyName object is equivalent to the input object.
 String getAttributeName()
          Returns a String indicating the name of the attribute.
 String getFriendlyName()
          Returns the friendly name in String format.
 ObjectIdentifier getObjectIdentifier()
          Returns the ObjectIdentifer for the FriendlyName attribute.
 Object getValue()
          Calls the getFriendlyName method.
 boolean isSingleValued()
          Returns true.
 boolean isTagValid(byte tag)
          Returns a boolean indicating if the tag is valid for this object.
 String toString()
          Returns a string representation of this FriendlyName object.
 
Methods inherited from class com.ibm.security.pkcs9.PKCS9DerObject
getName, getOID, getPKCSAttribute
 
Methods inherited from class com.ibm.security.pkcsutil.PKCSDerObject
decode, decode, encode, hashCode, read, readBASE64, write, write, writeBASE64
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FriendlyName

public FriendlyName(byte[] der)
             throws IOException
Create a FriendlyName object with a DER byte array.
Parameters:
der - a DER byte array of a FriendlyName object.
Throws:
IOException - on decoding errors.

FriendlyName

public FriendlyName(byte[] der,
                    String provider)
             throws IOException
Create a FriendlyName object with a DER byte array.
Parameters:
der - a DER byte array of a FriendlyName object.
provider - the provider to be used.
Throws:
IOException - on decoding errors.

FriendlyName

public FriendlyName(String name)
Create a FriendlyName object with the given name.
Parameters:
name - the friendly name.

FriendlyName

public FriendlyName(String name,
                    String provider)
Create a FriendlyName object with the given name.
Parameters:
name - the friendly name.
provider - the provider to be used.

FriendlyName

public FriendlyName(String filename,
                    boolean base64)
             throws IOException
Create a FriendlyName with the filename of the DER-encoded or BASE64-encoded object.
Parameters:
filename - name of the DER-encoded or base64-encoded object
base64 - true if BASE64-encoded, false if DER-encoded
Throws:
IOException - on decoding errors.

FriendlyName

public FriendlyName(String filename,
                    boolean base64,
                    String provider)
             throws IOException
Create a FriendlyName with the filename of the DER-encoded or BASE64-encoded object.
Parameters:
filename - name of the DER-encoded or base64-encoded object
base64 - true if BASE64-encoded, false if DER-encoded
provider - the provider to be used
Throws:
IOException - on decoding errors.
Method Detail

clone

public Object clone()
Creates a clone of this FriendlyName object.
Overrides:
clone in class Object
Returns:
clone of this FriendlyName object.

equals

public boolean equals(Object obj)
Determines if this FriendlyName object is equivalent to the input object.
Overrides:
equals in class PKCSDerObject
Parameters:
other - the object to compare this one to.
Returns:
true, if the two objects are equivalent, false otherwise.

getObjectIdentifier

public ObjectIdentifier getObjectIdentifier()
Returns the ObjectIdentifer for the FriendlyName attribute.
Overrides:
getObjectIdentifier in class PKCSDerObject
Returns:
the ObjectIdentifer for the FriendlyName attribute.

encode

public void encode(OutputStream os)
            throws IOException
Encodes this object to an OutputStream.
Overrides:
encode in class PKCSDerObject
Parameters:
os - the OutputStream to write the encoded data to.
Throws:
IOException - on encoding errors.

getFriendlyName

public String getFriendlyName()
Returns the friendly name in String format. The friendly name is an immutable object.
Returns:
String the Friendly Name, or "Invalid Friendly Name" if the BMP format of the Friendly Name is invalid.

getValue

public Object getValue()
Calls the getFriendlyName method. Standard method to access the value of the PKCS #9 object.
Overrides:
getValue in class PKCS9DerObject

isTagValid

public boolean isTagValid(byte tag)
Returns a boolean indicating if the tag is valid for this object.
Overrides:
isTagValid in class PKCS9DerObject
Returns:
true if tag_IA5String, false otherwise.

isSingleValued

public boolean isSingleValued()
Returns true. FriendlyName must have a single attribute value.
Overrides:
isSingleValued in class PKCS9DerObject
Returns:
true.

getAttributeName

public String getAttributeName()
Returns a String indicating the name of the attribute.
Overrides:
getAttributeName in class PKCS9DerObject
Returns:
name of the FriendlyName attribute.

toString

public String toString()
Returns a string representation of this FriendlyName object.
Overrides:
toString in class PKCSDerObject
Returns:
a string representation of this object.

decode

protected void decode(com.ibm.security.pkcs9.DerValue encoding)
               throws IOException
Initializes a FriendlyName object from a DerValue. The DER encoding must be in the format specified by the FriendlyName ASN.1 notation.
Overrides:
decode in class PKCS9DerObject
Parameters:
encoding - a DER-encoded FriendlyName object.
Throws:
IOException - on parsing error.