Class SMSSubmitReportError

  • All Implemented Interfaces:
    DataObject, FastSerializable, Serializable

    public final class SMSSubmitReportError
    extends SMSSubmitReport
    implements FastSerializable
    Representation of a SMS-SUBMIT-REPORT TPDU in a RP-ERROR, as defined in 3GPP TS 23.040 V9.0.0 (2009-06).

    The API offered by this class is as if the type were specified in ASN.1 as follows.

     SMSSubmitReportError ::= SEQUENCE {
         userDataHeaderIndicator UserDataHeaderIndicator,
         failureCause            SMSFailureCause,
         serviceCentreTimeStamp  SMSTimeStamp,
         protocolId              SMSProtocolId            OPTIONAL,
         dataCodingScheme        SMSDataCodingScheme      OPTIONAL,
         userDataLength          INTEGER                  OPTIONAL,
         userData                OCTET STRING
     }
    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 23.040 V9.0.0 (2009-06) §9.2.2.2a part (i) pp58-59
    76543210
    1 octet0User data header indicator0000Message type
    01
    1 octetFailure cause
    1 octet00000Has user data length?Has data coding scheme?Has protocol identifier?
    7 octetsService center time stamp
    0-1 octetsProtocol id
    0-1 octetsData coding scheme
    0-1 octetsUser data length
    0-151 octetsUser data

    In the above table, field names ending in ? are booleans: 1 for true, 0 for false.
    See Also:
    Serialized Form
    • Constructor Detail

      • SMSSubmitReportError

        public SMSSubmitReportError()
        Constructs a new SMSSubmitReportError object with no fields set.
      • SMSSubmitReportError

        public SMSSubmitReportError​(byte[] data)
        Constructs a new SMSSubmitReportError object from network-encoded data. The data is not decoded and might not be decodable.
        Parameters:
        data - network-encoded data
        Throws:
        NullPointerException - if data is null
      • SMSSubmitReportError

        public SMSSubmitReportError​(byte[] data,
                                    int start,
                                    int len)
        Constructs a new SMSSubmitReportError object from part of network-encoded data. The part starts at index start and is len bytes long. The data is not decoded and might not be decodable.
        Parameters:
        data - network-encoded data
        start - starting offset of network-encoded data in byte array
        len - default length if not predictable
        Throws:
        NullPointerException - if data is null
        IllegalArgumentException - if len is negative
      • SMSSubmitReportError

        public SMSSubmitReportError​(DataInput in)
                             throws IOException
        Constructs a new SMSSubmitReportError object from data deserialized from a stream that was written by toStream(DataOutput).
        Parameters:
        in - the stream to read from
        Throws:
        EOFException - if reading is pre-empted by end-of-file
        IOException - if the data cannot be read