package android.telephony;

import android.os.Parcel;
import android.os.Parcelable;

import java.util.Objects;


Class that stores information specific to voice network registration.
@hide
/** * Class that stores information specific to voice network registration. * @hide */
public class VoiceSpecificRegistrationStates implements Parcelable{
oncurrent services support indicator. if registered on a CDMA system. false - Concurrent services not supported, true - Concurrent services supported
/** * oncurrent services support indicator. if * registered on a CDMA system. * false - Concurrent services not supported, * true - Concurrent services supported */
public final boolean cssSupported;
TSB-58 Roaming Indicator if registered on a CDMA or EVDO system or -1 if not. Valid values are 0-255.
/** * TSB-58 Roaming Indicator if registered * on a CDMA or EVDO system or -1 if not. * Valid values are 0-255. */
public final int roamingIndicator;
indicates whether the current system is in the PRL if registered on a CDMA or EVDO system or -1 if not. 0=not in the PRL, 1=in the PRL
/** * indicates whether the current system is in the * PRL if registered on a CDMA or EVDO system or -1 if * not. 0=not in the PRL, 1=in the PRL */
public final int systemIsInPrl;
default Roaming Indicator from the PRL, if registered on a CDMA or EVDO system or -1 if not. Valid values are 0-255.
/** * default Roaming Indicator from the PRL, * if registered on a CDMA or EVDO system or -1 if not. * Valid values are 0-255. */
public final int defaultRoamingIndicator; VoiceSpecificRegistrationStates(boolean cssSupported, int roamingIndicator, int systemIsInPrl, int defaultRoamingIndicator) { this.cssSupported = cssSupported; this.roamingIndicator = roamingIndicator; this.systemIsInPrl = systemIsInPrl; this.defaultRoamingIndicator = defaultRoamingIndicator; } private VoiceSpecificRegistrationStates(Parcel source) { this.cssSupported = source.readBoolean(); this.roamingIndicator = source.readInt(); this.systemIsInPrl = source.readInt(); this.defaultRoamingIndicator = source.readInt(); } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeBoolean(cssSupported); dest.writeInt(roamingIndicator); dest.writeInt(systemIsInPrl); dest.writeInt(defaultRoamingIndicator); } @Override public int describeContents() { return 0; } @Override public String toString() { return "VoiceSpecificRegistrationStates {" + " mCssSupported=" + cssSupported + " mRoamingIndicator=" + roamingIndicator + " mSystemIsInPrl=" + systemIsInPrl + " mDefaultRoamingIndicator=" + defaultRoamingIndicator + "}"; } @Override public int hashCode() { return Objects.hash(cssSupported, roamingIndicator, systemIsInPrl, defaultRoamingIndicator); } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || !(o instanceof VoiceSpecificRegistrationStates)) { return false; } VoiceSpecificRegistrationStates other = (VoiceSpecificRegistrationStates) o; return this.cssSupported == other.cssSupported && this.roamingIndicator == other.roamingIndicator && this.systemIsInPrl == other.systemIsInPrl && this.defaultRoamingIndicator == other.defaultRoamingIndicator; } public static final Parcelable.Creator<VoiceSpecificRegistrationStates> CREATOR = new Parcelable.Creator<VoiceSpecificRegistrationStates>() { @Override public VoiceSpecificRegistrationStates createFromParcel(Parcel source) { return new VoiceSpecificRegistrationStates(source); } @Override public VoiceSpecificRegistrationStates[] newArray(int size) { return new VoiceSpecificRegistrationStates[size]; } }; }