1cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak/* 2cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Copyright (c) 2016 The Android Open Source Project 3cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * 4cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Licensed under the Apache License, Version 2.0 (the "License"); 5cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * you may not use this file except in compliance with the License. 6cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * You may obtain a copy of the License at 7cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * 8cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * http://www.apache.org/licenses/LICENSE-2.0 9cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * 10cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Unless required by applicable law or agreed to in writing, software 11cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * distributed under the License is distributed on an "AS IS" BASIS, 12cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * See the License for the specific language governing permissions and 14cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * limitations under the License. 15cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 16cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakpackage com.android.ims.internal.uce.options; 17cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 18cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport com.android.ims.internal.uce.common.CapInfo; 19cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport android.os.Parcel; 20cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport android.os.Parcelable; 21cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport android.util.Log; 22cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 23cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak/** @hide */ 24cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakpublic class OptionsCapInfo implements Parcelable { 25cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 26cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private String mSdp = ""; // SDP message body. It is client responsibility. 27cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private CapInfo mCapInfo; 28cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 29cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public static OptionsCapInfo getOptionsCapInfoInstance() { 30cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return new OptionsCapInfo(); 31cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 32cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 33cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public String getSdp() { 34cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mSdp; 35cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 36cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 37cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setSdp(String sdp) { 38cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mSdp = sdp; 39cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 40cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 41cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 42cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Constructor for the OptionsCapInfo class. 43cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 44cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public OptionsCapInfo() { 45cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mCapInfo = new CapInfo(); 46cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak }; 47cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 48cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public CapInfo getCapInfo() { 49cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mCapInfo; 50cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 51cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 52cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Sets the CapInfo 53cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 54cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setCapInfo(CapInfo capInfo) { 55cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mCapInfo = capInfo; 56cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 57cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 58cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public int describeContents() { 59cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return 0; 60cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 61cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 62cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void writeToParcel(Parcel dest, int flags) { 63cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeString(mSdp); 64cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeParcelable(mCapInfo, flags); 65cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 66cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 67cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public static final Parcelable.Creator<OptionsCapInfo> CREATOR = 68cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak new Parcelable.Creator<OptionsCapInfo>() { 69cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 70cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public OptionsCapInfo createFromParcel(Parcel source) { 71cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return new OptionsCapInfo(source); 72cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 73cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 74cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public OptionsCapInfo[] newArray(int size) { 75cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return new OptionsCapInfo[size]; 76cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 77cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak }; 78cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 79cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private OptionsCapInfo(Parcel source) { 80cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak readFromParcel(source); 81cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 82cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 83cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void readFromParcel(Parcel source) { 84cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mSdp = source.readString(); 85cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mCapInfo = source.readParcelable(CapInfo.class.getClassLoader()); 86cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 87cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak}