119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar/* 219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Copyright (C) 2006 The Android Open Source Project 319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * 419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Licensed under the Apache License, Version 2.0 (the "License"); 519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * you may not use this file except in compliance with the License. 619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * You may obtain a copy of the License at 719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * 819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * http://www.apache.org/licenses/LICENSE-2.0 919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * 1019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Unless required by applicable law or agreed to in writing, software 1119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * distributed under the License is distributed on an "AS IS" BASIS, 1219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * See the License for the specific language governing permissions and 1419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * limitations under the License. 1519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar */ 1619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 1719ba736c22869ec678ce0a79858ab3624fedee1bpkanwarpackage android.telephony; 1819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 1919ba736c22869ec678ce0a79858ab3624fedee1bpkanwarimport android.os.Parcel; 2019ba736c22869ec678ce0a79858ab3624fedee1bpkanwarimport android.os.Parcelable; 2119ba736c22869ec678ce0a79858ab3624fedee1bpkanwarimport android.text.TextUtils; 2219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 2319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar/** 2419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Represents the Ussd response, including 2519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * the message and the return code. 2619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * @hide 2719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar */ 2819ba736c22869ec678ce0a79858ab3624fedee1bpkanwarpublic final class UssdResponse implements Parcelable { 2919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar private CharSequence mReturnMessage; 3019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar private String mUssdRequest; 3119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 3219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 3319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar /** 3419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Implement the Parcelable interface 3519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar */ 3619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar @Override 3719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public void writeToParcel(Parcel dest, int flags) { 3819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar dest.writeString(mUssdRequest); 3919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar TextUtils.writeToParcel(mReturnMessage, dest, 0); 4019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 4119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 4219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public String getUssdRequest() { 4319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar return mUssdRequest; 4419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 4519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 4619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public CharSequence getReturnMessage() { 4719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar return mReturnMessage; 4819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 4919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 5019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar /** 5119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * Implement the Parcelable interface 5219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar */ 5319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar @Override 5419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public int describeContents() { 5519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar return 0; 5619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 5719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 5819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar /** 5919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar * * Initialize the object from the request and return message. 6019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar */ 6119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public UssdResponse(String ussdRequest, CharSequence returnMessage) { 6219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar mUssdRequest = ussdRequest; 6319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar mReturnMessage = returnMessage; 6419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 6519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 6619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public static final Parcelable.Creator<UssdResponse> CREATOR = new Creator<UssdResponse>() { 6719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 6819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar @Override 6919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public UssdResponse createFromParcel(Parcel in) { 7019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar String request = in.readString(); 7119ba736c22869ec678ce0a79858ab3624fedee1bpkanwar CharSequence message = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in); 7219ba736c22869ec678ce0a79858ab3624fedee1bpkanwar return new UssdResponse(request, message); 7319ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 7419ba736c22869ec678ce0a79858ab3624fedee1bpkanwar 7519ba736c22869ec678ce0a79858ab3624fedee1bpkanwar @Override 7619ba736c22869ec678ce0a79858ab3624fedee1bpkanwar public UssdResponse[] newArray(int size) { 7719ba736c22869ec678ce0a79858ab3624fedee1bpkanwar return new UssdResponse[size]; 7819ba736c22869ec678ce0a79858ab3624fedee1bpkanwar } 7919ba736c22869ec678ce0a79858ab3624fedee1bpkanwar }; 8019ba736c22869ec678ce0a79858ab3624fedee1bpkanwar} 81