public static final class BearerCapability.ITU_T.Layer3Capability extends AbstractLazyEncodedByteArray
The API offered by this class is as if the type were specified in ASN.1 as follows.
Layer3Capability ::= SEQUENCE {
layer3Protocol Layer3Protocol,
layer3ProtocolId Layer3ProtocolId OPTIONAL
}
The class takes care of encoding the field values into a byte-array
and decoding field values from a byte-array,
the encoded representation being as tabulated below.
| Data Encoding - based on ITU-T Q.931 (05/98) §4.5.5 p58 | ||||||||
|---|---|---|---|---|---|---|---|---|
| 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | |
| Octet 7 | ext. 0 | Layer 3 ident. (11) | User information layer 3 protocol | |||||
| Octet 7a* | ext. 0 | Spare (000) | Additional layer 3 protocol information (most significant bits) | |||||
| Octet 7b* | ext. 1 | Spare (000) | Additional layer 3 protocol information (least significant bits) | |||||
| Modifier and Type | Class and Description |
|---|---|
static class |
BearerCapability.ITU_T.Layer3Capability.Layer3Protocol
ITU-T User Information Layer 3 Protocol constants.
|
static class |
BearerCapability.ITU_T.Layer3Capability.Layer3ProtocolId
ITU-T User Information Layer 3 Protocol Id constants.
|
isDecodedencodedFIELD_ABSENT, FIELD_UNINITIALISED| Constructor and Description |
|---|
BearerCapability.ITU_T.Layer3Capability()
Constructs a new Layer3Capability object with no fields set.
|
BearerCapability.ITU_T.Layer3Capability(byte[] data)
Constructs a new Layer3Capability object from network-encoded data.
|
BearerCapability.ITU_T.Layer3Capability(byte[] data,
int start,
int len)
Constructs a new Layer3Capability object from part of network-encoded data.
|
BearerCapability.ITU_T.Layer3Capability(DataInput in)
Constructs a new Layer3Capability object from data deserialized from a stream that was written by
toStream(DataOutput). |
| Modifier and Type | Method and Description |
|---|---|
void |
checkFieldsSet()
Checks that all mandatory fields are present.
|
BearerCapability.ITU_T.Layer3Capability |
clone()
Constructs a copy of this object and everything reachable from it.
|
static BearerCapability.ITU_T.Layer3Capability |
copyOf(BearerCapability.ITU_T.Layer3Capability from)
Creates a new object of this type, cloning the values of common fields from the given object of any subclass of the same base type.
|
protected void |
decode()
Computes the decoded form from the encoded form.
|
protected void |
encode()
Computes the encoded form from the decoded form.
|
protected boolean |
encodedIsInvalid()
Determines whether the encoded form is invalid.
|
static int |
getContainedLength(byte[] data,
int start,
int len)
Determines the length of the encoded value that commences at offset
start in the given data. |
byte[] |
getEncodedForm()
Gets the encoded form.
|
static FieldAccessor[] |
getFieldAccessors()
Gets a new array of the accessors for fields of this type.
|
Map<String,Object> |
getFieldsMap(boolean withAbsents)
Gets a Map from field-name to field-value for the fields of a sequence.
|
BearerCapability.ITU_T.Layer3Capability.Layer3Protocol |
getLayer3Protocol()
Gets the value of the user information layer 3 protocol.
|
BearerCapability.ITU_T.Layer3Capability.Layer3ProtocolId |
getLayer3ProtocolId()
Gets the value of the user information layer 3 protocol identification.
|
boolean |
hasLayer3Protocol()
Tests whether the field Layer3Protocol has a value.
|
boolean |
hasLayer3ProtocolId()
Tests whether the field Layer3ProtocolId has a value.
|
BearerCapability.ITU_T.Layer3Capability |
setLayer3Protocol(BearerCapability.ITU_T.Layer3Capability.Layer3Protocol value)
Sets the value of the user information layer 3 protocol.
|
BearerCapability.ITU_T.Layer3Capability |
setLayer3ProtocolId(BearerCapability.ITU_T.Layer3Capability.Layer3ProtocolId value)
Sets the value of the user information layer 3 protocol identification.
|
void |
toStream(DataOutput out)
Serializes this object to a stream in a form suitable for reading by
BearerCapability.ITU_T.Layer3Capability(DataInput). |
checkDecode, checkModifyAndDecodeequals, hashCode, toStringcheckModify, isReadOnly, setReadOnlypublic BearerCapability.ITU_T.Layer3Capability()
public BearerCapability.ITU_T.Layer3Capability(byte[] data)
data - network-encoded dataNullPointerException - if data is nullpublic BearerCapability.ITU_T.Layer3Capability(byte[] data,
int start,
int len)
start and is len bytes long.
The data is not decoded and might not be decodable.data - network-encoded datastart - starting offset of network-encoded data in byte arraylen - default length if not predictableNullPointerException - if data is nullIllegalArgumentException - if len is negativepublic BearerCapability.ITU_T.Layer3Capability(DataInput in) throws IOException
toStream(DataOutput).in - the stream to read fromEOFException - if reading is pre-empted by end-of-fileIOException - if the data cannot be readpublic void toStream(DataOutput out) throws IOException
BearerCapability.ITU_T.Layer3Capability(DataInput).out - the stream to write toIOException - if an I/O error occurspublic boolean hasLayer3Protocol()
throws DecodeException
DecodeException - if encoded state cannot be decodedpublic boolean hasLayer3ProtocolId()
throws DecodeException
DecodeException - if encoded state cannot be decodedpublic void checkFieldsSet()
throws EncodeException
checkFieldsSet in class AbstractLazyEncodedDataObject<byte[]>EncodeException - if any mandatory field is not presentpublic BearerCapability.ITU_T.Layer3Capability.Layer3Protocol getLayer3Protocol() throws DecodeException
DecodeException - if encoded state cannot be decodedpublic BearerCapability.ITU_T.Layer3Capability.Layer3ProtocolId getLayer3ProtocolId() throws DecodeException
DecodeException - if encoded state cannot be decodedpublic BearerCapability.ITU_T.Layer3Capability setLayer3Protocol(BearerCapability.ITU_T.Layer3Capability.Layer3Protocol value) throws IllegalStateException
value - Layer3Protocol representation of the user information layer 3 protocolIllegalStateExceptionpublic BearerCapability.ITU_T.Layer3Capability setLayer3ProtocolId(BearerCapability.ITU_T.Layer3Capability.Layer3ProtocolId value) throws IllegalStateException
value - Layer3ProtocolId representation of the user information layer 3 protocol identificationIllegalStateExceptionpublic static BearerCapability.ITU_T.Layer3Capability copyOf(BearerCapability.ITU_T.Layer3Capability from)
from - the object from which to copypublic BearerCapability.ITU_T.Layer3Capability clone()
clone in interface DataObjectclone in class AbstractDataObjectpublic static FieldAccessor[] getFieldAccessors()
public Map<String,Object> getFieldsMap(boolean withAbsents)
getFieldsMap in class AbstractFieldsObjectwithAbsents - whether to put absent optional fields into Mapprotected boolean encodedIsInvalid()
public byte[] getEncodedForm()
throws EncodeException
EncodeException - if encoding failspublic static int getContainedLength(byte[] data,
int start,
int len)
start in the given data.
The value is not fully decoded and might not be decodable.
If the encoded value ends with a filling field,
then the given len is returned.
If the encoded value is so currupt that its length cannot be determined,
then 0 is returned.data - network-encoded datastart - index into data where value commenceslen - length in data to be consideredNullPointerException - if data is nullprotected void encode()
throws EncodeException
encode in class AbstractLazyEncodedDataObject<byte[]>EncodeException - if Layer3Protocol is null, or outside range [0,31], or is ISO_IEC_TR_9577 and Layer3ProtocolId is either null or outside range [0,255]protected void decode()
throws DecodeException
decode in class AbstractLazyEncodedDataObject<byte[]>DecodeException - if decoding fails