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 Zhamaitsiak 17cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakpackage com.android.ims.internal.uce.presence; 18cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 19cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport com.android.ims.internal.uce.common.StatusCode; 20cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 21cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport android.os.Parcel; 22cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakimport android.os.Parcelable; 23cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 24cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 25cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak/** @hide */ 26cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiakpublic class PresCmdStatus implements Parcelable{ 27cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 28cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private PresCmdId mCmdId = new PresCmdId(); 29cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private StatusCode mStatus = new StatusCode(); 30cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private int mUserData; 31cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private int mRequestId; 32cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 33cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 34cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Gets the Presence command ID. 35cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 36cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 37cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public PresCmdId getCmdId() { 38cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mCmdId; 39cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 40cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 41cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 42cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Sets the command ID. 43cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 44cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 45cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setCmdId(PresCmdId cmdId) { 46cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mCmdId = cmdId; 47cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 48cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 49cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 50cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Gets the user data. 51cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 52cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 53cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public int getUserData() { 54cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mUserData; 55cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 56cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 57cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 58cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Sets the user data. 59cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 60cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 61cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setUserData(int userData) { 62cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mUserData = userData; 63cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 64cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 65cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 66cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Gets the status code. 67cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 68cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 69cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public StatusCode getStatus() { 70cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mStatus; 71cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 72cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 73cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Sets the status code. 74cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 75cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 76cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setStatus(StatusCode status) { 77cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mStatus = status; 78cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 79cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 80cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 81cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Gets the request ID. 82cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 83cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 84cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public int getRequestId() { 85cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return mRequestId; 86cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 87cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 88cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 89cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Sets the request ID. 90cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 91cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 92cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void setRequestId(int requestId) { 93cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak this.mRequestId = requestId; 94cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 95cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 96cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** 97cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * Constructor for the PresCmdStatus class. 98cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak * @hide 99cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak */ 100cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public PresCmdStatus() { 101cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mStatus = new StatusCode(); 102cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak }; 103cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 104cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** @hide */ 105cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public int describeContents() { 106cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 107cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return 0; 108cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 109cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 110cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** @hide */ 111cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void writeToParcel(Parcel dest, int flags) { 112cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeInt(mUserData); 113cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeInt(mRequestId); 114cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeParcelable(mCmdId, flags); 115cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak dest.writeParcelable(mStatus, flags); 116cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 117cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 118cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** @hide */ 119cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public static final Parcelable.Creator<PresCmdStatus> CREATOR = 120cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak new Parcelable.Creator<PresCmdStatus>() { 121cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 122cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public PresCmdStatus createFromParcel(Parcel source) { 123cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 124cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return new PresCmdStatus(source); 125cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 126cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 127cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public PresCmdStatus[] newArray(int size) { 128cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 129cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak return new PresCmdStatus[size]; 130cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 131cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak }; 132cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 133cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** @hide */ 134cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak private PresCmdStatus(Parcel source) { 135cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak readFromParcel(source); 136cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 137cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 138cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak /** @hide */ 139cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak public void readFromParcel(Parcel source) { 140cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mUserData = source.readInt(); 141cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mRequestId = source.readInt(); 142cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mCmdId = source.readParcelable(PresCmdId.class.getClassLoader()); 143cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak mStatus = source.readParcelable(StatusCode.class.getClassLoader()); 144cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak } 145cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak 146cfedd20d54687449bb6a6982085003cbf9a22bcbPavel Zhamaitsiak}