com.lowagie.bc.asn1
Class DERBitString

java.lang.Object
  extended by com.lowagie.bc.asn1.DERObject
      extended by com.lowagie.bc.asn1.DERBitString
All Implemented Interfaces:
DEREncodable, DERString, DERTags

public class DERBitString
extends DERObject
implements DERString


Field Summary
protected  byte[] data
           
protected  int padBits
           
private static char[] table
           
 
Fields inherited from interface com.lowagie.bc.asn1.DERTags
APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERAL_STRING, GENERALIZED_TIME, GRAPHIC_STRING, IA5_STRING, INTEGER, NULL, NUMERIC_STRING, OBJECT_IDENTIFIER, OCTET_STRING, PRINTABLE_STRING, SEQUENCE, SEQUENCE_OF, SET, SET_OF, T61_STRING, TAGGED, UNIVERSAL_STRING, UTC_TIME, UTF8_STRING, VIDEOTEX_STRING, VISIBLE_STRING
 
Constructor Summary
  DERBitString(byte[] data)
           
  DERBitString(byte[] data, int padBits)
           
protected DERBitString(byte data, int padBits)
           
  DERBitString(DEREncodable obj)
           
 
Method Summary
(package private)  void encode(DEROutputStream out)
           
 boolean equals(java.lang.Object o)
           
 byte[] getBytes()
           
protected static byte[] getBytes(int bitString)
          return the correct number of bytes for a bit string defined in a 32 bit constant
static DERBitString getInstance(ASN1TaggedObject obj, boolean explicit)
          return a Bit String from a tagged object.
static DERBitString getInstance(java.lang.Object obj)
          return a Bit String from the passed in object
 int getPadBits()
           
protected static int getPadBits(int bitString)
          return the correct number of pad bits for a bit string defined in a 32 bit constant
 java.lang.String getString()
           
 int hashCode()
           
 
Methods inherited from class com.lowagie.bc.asn1.DERObject
getDERObject
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

table

private static final char[] table

data

protected byte[] data

padBits

protected int padBits
Constructor Detail

DERBitString

protected DERBitString(byte data,
                       int padBits)

DERBitString

public DERBitString(byte[] data,
                    int padBits)
Parameters:
data - the octets making up the bit string.
padBits - the number of extra bits at the end of the string.

DERBitString

public DERBitString(byte[] data)

DERBitString

public DERBitString(DEREncodable obj)
Method Detail

getPadBits

protected static int getPadBits(int bitString)
return the correct number of pad bits for a bit string defined in a 32 bit constant


getBytes

protected static byte[] getBytes(int bitString)
return the correct number of bytes for a bit string defined in a 32 bit constant


getInstance

public static DERBitString getInstance(java.lang.Object obj)
return a Bit String from the passed in object

Throws:
java.lang.IllegalArgumentException - if the object cannot be converted.

getInstance

public static DERBitString getInstance(ASN1TaggedObject obj,
                                       boolean explicit)
return a Bit String from a tagged object.

Parameters:
obj - the tagged object holding the object we want
explicit - true if the object is meant to be explicitly tagged false otherwise.
Throws:
java.lang.IllegalArgumentException - if the tagged object cannot be converted.

getBytes

public byte[] getBytes()

getPadBits

public int getPadBits()

encode

void encode(DEROutputStream out)
      throws java.io.IOException
Specified by:
encode in class DERObject
Throws:
java.io.IOException

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

getString

public java.lang.String getString()
Specified by:
getString in interface DERString