1d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd/*
2d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * Copyright (C) 2007 Esmertec AG.
3d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * Copyright (C) 2007 The Android Open Source Project
4d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd *
5d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * Licensed under the Apache License, Version 2.0 (the "License");
6d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * you may not use this file except in compliance with the License.
7d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * You may obtain a copy of the License at
8d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd *
9d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd *      http://www.apache.org/licenses/LICENSE-2.0
10d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd *
11d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * Unless required by applicable law or agreed to in writing, software
12d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * distributed under the License is distributed on an "AS IS" BASIS,
13d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * See the License for the specific language governing permissions and
15d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd * limitations under the License.
16d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd */
17d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
18d3b009ae55651f1e60950342468e3c37fdeb0796Mike Doddpackage android.support.v7.mms.pdu;
19d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
20d3b009ae55651f1e60950342468e3c37fdeb0796Mike Doddpublic class SendConf extends GenericPdu {
21d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
22d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Empty constructor.
23d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Since the Pdu corresponding to this class is constructed
24d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * by the Proxy-Relay server, this class is only instantiated
25d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * by the Pdu Parser.
26d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
27d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @throws InvalidHeaderValueException if error occurs.
28d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
29d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public SendConf() throws InvalidHeaderValueException {
30d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        super();
31d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        setMessageType(PduHeaders.MESSAGE_TYPE_SEND_CONF);
32d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
33d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
34d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
35d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Constructor with given headers.
36d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
37d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @param headers Headers for this PDU.
38d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
39d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    SendConf(PduHeaders headers) {
40d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        super(headers);
41d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
42d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
43d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
44d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Get Message-ID value.
45d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
46d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @return the value
47d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
48d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public byte[] getMessageId() {
49d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        return mPduHeaders.getTextString(PduHeaders.MESSAGE_ID);
50d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
51d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
52d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
53d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Set Message-ID value.
54d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
55d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @param value the value
56d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @throws NullPointerException if the value is null.
57d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
58d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public void setMessageId(byte[] value) {
59d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        mPduHeaders.setTextString(value, PduHeaders.MESSAGE_ID);
60d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
61d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
62d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
63d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Get X-Mms-Response-Status.
64d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
65d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @return the value
66d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
67d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public int getResponseStatus() {
68d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        return mPduHeaders.getOctet(PduHeaders.RESPONSE_STATUS);
69d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
70d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
71d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
72d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Set X-Mms-Response-Status.
73d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
74d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @param value the values
75d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @throws InvalidHeaderValueException if the value is invalid.
76d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
77d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public void setResponseStatus(int value) throws InvalidHeaderValueException {
78d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        mPduHeaders.setOctet(value, PduHeaders.RESPONSE_STATUS);
79d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
80d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
81d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
82d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Get X-Mms-Transaction-Id field value.
83d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
84d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @return the X-Mms-Report-Allowed value
85d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
86d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public byte[] getTransactionId() {
87d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd        return mPduHeaders.getTextString(PduHeaders.TRANSACTION_ID);
88d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
89d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
90d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /**
91d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Set X-Mms-Transaction-Id field value.
92d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
93d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @param value the value
94d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * @throws NullPointerException if the value is null.
95d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
96d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    public void setTransactionId(byte[] value) {
97d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd            mPduHeaders.setTextString(value, PduHeaders.TRANSACTION_ID);
98d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    }
99d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd
100d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd    /*
101d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     * Optional, not supported header fields:
102d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
103d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public byte[] getContentLocation() {return null;}
104d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public void setContentLocation(byte[] value) {}
105d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
106d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public EncodedStringValue getResponseText() {return null;}
107d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public void setResponseText(EncodedStringValue value) {}
108d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
109d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public byte getStoreStatus() {return 0x00;}
110d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public void setStoreStatus(byte value) {}
111d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *
112d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public byte[] getStoreStatusText() {return null;}
113d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     *    public void setStoreStatusText(byte[] value) {}
114d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd     */
115d3b009ae55651f1e60950342468e3c37fdeb0796Mike Dodd}
116