/* * Copyright (c) 2016 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.ims.internal.uce.presence; import android.os.Parcel; import android.os.Parcelable; /** @hide */ public class PresRlmiInfo implements Parcelable { /** * uri corresponding to the list. Typically, this is the URI to * which the SUBSCRIBE request was sent. */ private String mUri = ""; /** list version number from 0 to 2^32-1 */ private int mVersion; /** * Indicate whether the NOTIFY message contains information for * every resource in the list */ private boolean mFullState; /** list name */ private String mListName = ""; /** * unique request ID used to match NOTIFY with original list * SUBSCRIBE */ private int mRequestId; /** subscription state*/ private PresSubscriptionState mPresSubscriptionState; /** active subscription expires time in second */ private int mSubscriptionExpireTime; /** list subscrption terminated reason */ private String mSubscriptionTerminatedReason; /** * Gets the URI. * @hide */ public String getUri() { return mUri; } /** * Sets the URI. * @hide */ public void setUri(String uri) { this.mUri = uri; } /** * Gets the version. * @hide */ public int getVersion() { return mVersion; } /** * Sets the version. * @hide */ public void setVersion(int version) { this.mVersion = version; } /** * Gets the RLMI state. * @hide */ public boolean isFullState() { return mFullState; } /** * Sets the RLMI state. * @hide */ public void setFullState(boolean fullState) { this.mFullState = fullState; } /** * Gets the RLMI list name. * @hide */ public String getListName() { return mListName; } /** * Sets the RLMI list name. * @hide */ public void setListName(String listName) { this.mListName = listName; } /** * Gets the subscription request ID. * @hide */ public int getRequestId() { return mRequestId; } /** * Sets the subscription request ID. * @hide */ public void setRequestId(int requestId) { this.mRequestId = requestId; } /** * Gets the presence subscription state. * @hide */ public PresSubscriptionState getPresSubscriptionState() { return mPresSubscriptionState; } /** * Sets the presence subscription state. * @hide */ public void setPresSubscriptionState(PresSubscriptionState presSubscriptionState) { this.mPresSubscriptionState = presSubscriptionState; } /** * Gets the presence subscription expiration time. * @hide */ public int getSubscriptionExpireTime() { return mSubscriptionExpireTime; } /** * Sets the presence subscription expiration time. * @hide */ public void setSubscriptionExpireTime(int subscriptionExpireTime) { this.mSubscriptionExpireTime = subscriptionExpireTime; } /** * Gets the presence subscription terminated reason. * @hide */ public String getSubscriptionTerminatedReason() { return mSubscriptionTerminatedReason; } /** * Sets the presence subscription terminated reason. * @hide */ public void setSubscriptionTerminatedReason(String subscriptionTerminatedReason) { this.mSubscriptionTerminatedReason = subscriptionTerminatedReason; } /** * Constructor for the PresTupleInfo class. * @hide */ public PresRlmiInfo(){}; /** @hide */ public int describeContents() { return 0; } /** @hide */ public void writeToParcel(Parcel dest, int flags) { dest.writeString(mUri); dest.writeInt(mVersion); dest.writeInt(mFullState ? 1 : 0); dest.writeString(mListName); dest.writeInt(mRequestId); dest.writeParcelable(mPresSubscriptionState, flags); dest.writeInt(mSubscriptionExpireTime); dest.writeString(mSubscriptionTerminatedReason); } /** @hide */ public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { public PresRlmiInfo createFromParcel(Parcel source) { return new PresRlmiInfo(source); } public PresRlmiInfo[] newArray(int size) { return new PresRlmiInfo[size]; } }; /** @hide */ private PresRlmiInfo(Parcel source) { readFromParcel(source); } /** @hide */ public void readFromParcel(Parcel source) { mUri = source.readString(); mVersion = source.readInt(); mFullState = (source.readInt() == 0) ? false : true; mListName = source.readString(); mRequestId = source.readInt(); mPresSubscriptionState = source.readParcelable( PresSubscriptionState.class.getClassLoader()); mSubscriptionExpireTime = source.readInt(); mSubscriptionTerminatedReason = source.readString(); } }