netscape.ldap.ber.stream

Class BERBitString

Implemented Interfaces:
Serializable

public class BERBitString
extends BERElement

This class is for the BitString object. Note that the BitSet class has a bug: size() returns the size of the internal allocated memory rather than the number of bits. Current work-around is to maintain the number of bits ourselves in m_value_num_bits. Change is required when BitSet is fixed.
 ENCODING RULE:
   Primitive Definite length.
   tag = 0x03
 
Version:
1.0 seeAlso CCITT X.209

Field Summary

Fields inherited from class netscape.ldap.ber.stream.BERElement

ANY, APPLICATION, BITSTRING, BOOLEAN, CHOICE, CONSTRUCTED, CONTEXT, ENUMERATED, EOC, EXOP_REQ_OID, EXOP_REQ_VALUE, EXOP_RES_OID, EXOP_RES_VALUE, GENERALSTRING, GRAPHICSTRING, IA5STRING, INTEGER, MRA_DNATTRS, MRA_OID, MRA_TYPE, MRA_VALUE, NULL, NUMERICSTRING, OBJECTID, OCTETSTRING, PRIMITIVE, PRINTABLESTRING, PRIVATE, REAL, SASLCONTEXT, SEQUENCE, SET, SK_MATCHRULE, SK_REVERSE, SR_ATTRTYPE, TAG, TELETEXSTRING, UNIVERSAL, UTCTIME, VIDEOTEXSTRING, VISIBLESTRING

Constructor Summary

BERBitString(BitSet value)
Constructs a boolean element.
BERBitString(InputStream stream, int[] bytes_read)
Constructs a bitstring element from an input stream (for primitive encodings).
BERBitString(BERTagDecoder decoder, InputStream stream, int[] bytes_read)
Constructs a bitstring element from an input stream (for constructed encodings).

Method Summary

int
getSize()
Gets the number of bits.
int
getType()
Gets the element type.
BitSet
getValue()
Gets the bitstring value.
String
toString()
Gets the string representation.
void
write(OutputStream stream)
Sends the BER encoding directly to a stream.

Methods inherited from class netscape.ldap.ber.stream.BERElement

byteToHexString, getElement, getType, readLengthOctets, readTwosComplement, readUnsignedBinary, sendDefiniteLength, toString, write

Constructor Details

BERBitString

public BERBitString(BitSet value)
Constructs a boolean element.
Parameters:
value - boolean value

BERBitString

public BERBitString(InputStream stream,
                    int[] bytes_read)
            throws IOException
Constructs a bitstring element from an input stream (for primitive encodings).
Parameters:
stream - source
bytes_read - array of 1 int; value incremented by number of bytes read from stream

BERBitString

public BERBitString(BERTagDecoder decoder,
                    InputStream stream,
                    int[] bytes_read)
            throws IOException
Constructs a bitstring element from an input stream (for constructed encodings).
Parameters:
stream - source
bytes_read - array of 1 int; value incremented by number of bytes read from stream

Method Details

getSize

public int getSize()
Gets the number of bits.
Returns:
bit numbers.

getType

public int getType()
Gets the element type.
Overrides:
getType in interface BERElement

getValue

public BitSet getValue()
Gets the bitstring value.

toString

public String toString()
Gets the string representation.
Overrides:
toString in interface BERElement
Returns:
string representation of tag.

write

public void write(OutputStream stream)
            throws IOException
Sends the BER encoding directly to a stream. Always sends in primitive form.
Overrides:
write in interface BERElement
Parameters:
stream - output stream