Package org.bouncycastle.asn1
Class ASN1BitString
- java.lang.Object
-
- org.bouncycastle.asn1.ASN1Object
-
- org.bouncycastle.asn1.ASN1Primitive
-
- org.bouncycastle.asn1.ASN1BitString
-
- All Implemented Interfaces:
ASN1BitStringParser
,ASN1Encodable
,ASN1String
,InMemoryRepresentable
,Encodable
- Direct Known Subclasses:
BERBitString
,DERBitString
,DLBitString
public abstract class ASN1BitString extends ASN1Primitive implements ASN1String, ASN1BitStringParser
Base class for BIT STRING objects
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.io.InputStream
getBitStream()
Return an InputStream representing the contents of the BIT STRING.byte[]
getBytes()
protected static byte[]
getBytes(int bitString)
static ASN1BitString
getInstance(java.lang.Object obj)
static ASN1BitString
getInstance(ASN1TaggedObject taggedObject, boolean explicit)
ASN1Primitive
getLoadedObject()
Get the in-memory representation of the ASN.1 object.byte[]
getOctets()
Return the octets contained in this BIT STRING, checking that this BIT STRING really does represent an octet aligned string.java.io.InputStream
getOctetStream()
Return an InputStream representing the contents of the BIT STRING, where the content is expected to be octet-aligned (this will be automatically checked during parsing).int
getPadBits()
Return the number of pad bits, if any, in the final byte, if any, read fromASN1BitStringParser.getBitStream()
.protected static int
getPadBits(int bitString)
java.lang.String
getString()
Return a String representation of this BIT STRINGint
hashCode()
int
intValue()
ASN1BitStringParser
parser()
java.lang.String
toString()
-
Methods inherited from class org.bouncycastle.asn1.ASN1Primitive
encodeTo, encodeTo, equals, equals, equals, fromByteArray, toASN1Primitive
-
Methods inherited from class org.bouncycastle.asn1.ASN1Object
getEncoded, getEncoded, hasEncodedTagValue
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.bouncycastle.asn1.ASN1Encodable
toASN1Primitive
-
-
-
-
Method Detail
-
getInstance
public static ASN1BitString getInstance(java.lang.Object obj)
-
getInstance
public static ASN1BitString getInstance(ASN1TaggedObject taggedObject, boolean explicit)
-
getPadBits
protected static int getPadBits(int bitString)
- Parameters:
bitString
- an int containing the BIT STRING- Returns:
- the correct number of pad bits for a bit string defined in a 32 bit constant
-
getBytes
protected static byte[] getBytes(int bitString)
- Parameters:
bitString
- an int containing the BIT STRING- Returns:
- the correct number of bytes for a bit string defined in a 32 bit constant
-
getBitStream
public java.io.InputStream getBitStream() throws java.io.IOException
Description copied from interface:ASN1BitStringParser
Return an InputStream representing the contents of the BIT STRING. The final byte, if any, may include pad bits. SeeASN1BitStringParser.getPadBits()
.- Specified by:
getBitStream
in interfaceASN1BitStringParser
- Returns:
- an InputStream with its source as the BIT STRING content.
- Throws:
java.io.IOException
-
getOctetStream
public java.io.InputStream getOctetStream() throws java.io.IOException
Description copied from interface:ASN1BitStringParser
Return an InputStream representing the contents of the BIT STRING, where the content is expected to be octet-aligned (this will be automatically checked during parsing).- Specified by:
getOctetStream
in interfaceASN1BitStringParser
- Returns:
- an InputStream with its source as the BIT STRING content.
- Throws:
java.io.IOException
-
parser
public ASN1BitStringParser parser()
-
getString
public java.lang.String getString()
Return a String representation of this BIT STRING- Specified by:
getString
in interfaceASN1String
- Returns:
- a String representation.
-
intValue
public int intValue()
- Returns:
- the value of the bit string as an int (truncating if necessary)
-
getOctets
public byte[] getOctets()
Return the octets contained in this BIT STRING, checking that this BIT STRING really does represent an octet aligned string. Only use this method when the standard you are following dictates that the BIT STRING will be octet aligned.- Returns:
- a copy of the octet aligned data.
-
getBytes
public byte[] getBytes()
-
getPadBits
public int getPadBits()
Description copied from interface:ASN1BitStringParser
Return the number of pad bits, if any, in the final byte, if any, read fromASN1BitStringParser.getBitStream()
. This number is in the range zero to seven. That number of the least significant bits of the final byte, if any, are not part of the contents and should be ignored. NOTE: Must be called AFTER the stream has been fully processed. (Does not need to be called ifASN1BitStringParser.getOctetStream()
was used instead ofASN1BitStringParser.getBitStream()
).- Specified by:
getPadBits
in interfaceASN1BitStringParser
- Returns:
- the number of pad bits. In the range zero to seven.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in classASN1Primitive
-
getLoadedObject
public ASN1Primitive getLoadedObject()
Description copied from interface:InMemoryRepresentable
Get the in-memory representation of the ASN.1 object.- Specified by:
getLoadedObject
in interfaceInMemoryRepresentable
- Returns:
- an ASN1Primitive representing the loaded object.
-
-