public static final class MSBearerCapability.GSM.Content.Speech extends AbstractLazyEncodedByteArray implements FastSerializable
The API offered by this class is as if the type were specified in ASN.1 as follows.
Speech ::= SEQUENCE { cTM CTM OPTIONAL, speechVersions SEQUENCE OF SpeechVersion }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 3GPP TS 24.008 v9.3.0 (2010-06) §10.5.4.5 pp425-440 | ||||||||
---|---|---|---|---|---|---|---|---|
Octet 3a* | ext. 0/1 | Coding (0) | CTM | Spare (0) | Speech version indication | |||
Octet 3b etc* | ext. 0/1 | Coding (0) | Spare (0) | Spare (0) | Speech version indication |
Modifier and Type | Class and Description |
---|---|
static class |
MSBearerCapability.GSM.Content.Speech.CTM
Enumeration of CTM constants.
|
static class |
MSBearerCapability.GSM.Content.Speech.SpeechVersion
SpeechVersion constants.
|
isDecoded
encoded
FIELD_ABSENT, FIELD_UNINITIALISED
Constructor and Description |
---|
MSBearerCapability.GSM.Content.Speech()
Constructs a new Speech object with no fields set.
|
MSBearerCapability.GSM.Content.Speech(byte[] data)
Constructs a new Speech object from network-encoded data.
|
MSBearerCapability.GSM.Content.Speech(byte[] data,
int start,
int len)
Constructs a new Speech object from part of network-encoded data.
|
MSBearerCapability.GSM.Content.Speech(DataInput in)
Constructs a new Speech 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.
|
MSBearerCapability.GSM.Content.Speech |
clone()
Constructs a copy of this object and everything reachable from it.
|
static MSBearerCapability.GSM.Content.Speech |
copyOf(MSBearerCapability.GSM.Content.Speech 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 of the state 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 . |
MSBearerCapability.GSM.Content.Speech.CTM |
getCTM()
Gets the value of the CTM text telephony indication.
|
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.
|
MSBearerCapability.GSM.Content.Speech.SpeechVersion[] |
getSpeechVersions()
Gets the value of the speech version indications.
|
boolean |
hasCTM()
Tests whether the field CTM has a value.
|
boolean |
hasSpeechVersions()
Tests whether the field SpeechVersions has a value.
|
MSBearerCapability.GSM.Content.Speech |
setCTM(MSBearerCapability.GSM.Content.Speech.CTM value)
Sets the value of the CTM text telephony indication.
|
MSBearerCapability.GSM.Content.Speech |
setSpeechVersions(MSBearerCapability.GSM.Content.Speech.SpeechVersion[] value)
Sets the value of the speech version indications.
|
void |
toStream(DataOutput out)
Serializes this object to a stream in a form suitable for reading by
MSBearerCapability.GSM.Content.Speech(DataInput) . |
checkDecode, checkModifyAndDecode
equals, hashCode, toString
checkModify, isReadOnly, setReadOnly
public MSBearerCapability.GSM.Content.Speech()
public MSBearerCapability.GSM.Content.Speech(byte[] data)
data
- network-encoded dataNullPointerException
- if data is nullpublic MSBearerCapability.GSM.Content.Speech(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 MSBearerCapability.GSM.Content.Speech(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
MSBearerCapability.GSM.Content.Speech(DataInput)
.toStream
in interface FastSerializable
out
- the stream to write toIOException
- if an I/O error occurspublic boolean hasCTM() throws DecodeException
DecodeException
- if encoded state cannot be decodedpublic boolean hasSpeechVersions() 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 MSBearerCapability.GSM.Content.Speech.CTM getCTM() throws DecodeException
DecodeException
- if encoded state cannot be decodedpublic MSBearerCapability.GSM.Content.Speech.SpeechVersion[] getSpeechVersions() throws DecodeException
DecodeException
- if encoded state cannot be decodedpublic MSBearerCapability.GSM.Content.Speech setCTM(MSBearerCapability.GSM.Content.Speech.CTM value) throws IllegalStateException
value
- CTM representation of the CTM text telephony indicationIllegalStateException
public MSBearerCapability.GSM.Content.Speech setSpeechVersions(MSBearerCapability.GSM.Content.Speech.SpeechVersion[] value) throws IllegalStateException
value
- SpeechVersion[] representation of the speech version indicationsIllegalStateException
public static MSBearerCapability.GSM.Content.Speech copyOf(MSBearerCapability.GSM.Content.Speech from)
from
- the object from which to copypublic MSBearerCapability.GSM.Content.Speech clone()
clone
in interface DataObject
clone
in class AbstractDataObject
public static FieldAccessor[] getFieldAccessors()
public Map<String,Object> getFieldsMap(boolean withAbsents)
getFieldsMap
in class AbstractFieldsObject
withAbsents
- 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.
Values of this type are of variable length, so the given length
is returned if the data is long enough, otherwise 0 is returned.data
- network-encoded datastart
- index into data where value commenceslen
- length in data to be consideredprotected void encode() throws EncodeException
encode
in class AbstractLazyEncodedDataObject<byte[]>
EncodeException
- if encoding failsprotected void decode() throws DecodeException
decode
in class AbstractLazyEncodedDataObject<byte[]>
DecodeException
- if too few or too many octets to be decoded