summaryrefslogtreecommitdiffstats
path: root/telephony/java/android/telephony/ServiceState.java
diff options
context:
space:
mode:
authorJohn Wang <johnwang@google.com>2010-04-07 08:57:17 -0700
committerJohn Wang <johnwang@google.com>2010-04-07 16:06:13 -0700
commit56c2d2ff27536a1d8edf0037cd41ff3ea3272fd9 (patch)
tree79c4eb2454158d871e68346a1f5e8efe874024c4 /telephony/java/android/telephony/ServiceState.java
parentf61eade258d5274b8447c0ea936ee578b7dc063a (diff)
downloadframeworks_base-56c2d2ff27536a1d8edf0037cd41ff3ea3272fd9.zip
frameworks_base-56c2d2ff27536a1d8edf0037cd41ff3ea3272fd9.tar.gz
frameworks_base-56c2d2ff27536a1d8edf0037cd41ff3ea3272fd9.tar.bz2
Add emergencyOnly indicator in ServiceState.
For bug 2536842 to show signal strength in Emergency mode. The STATE_EMERGENCY_ONLY of ServiceState is not in-use. So add a hide interface to indicate Emergency mode. Change-Id: I19398ac5e73a722dcaaf744347f961d1fa7513ac
Diffstat (limited to 'telephony/java/android/telephony/ServiceState.java')
-rw-r--r--telephony/java/android/telephony/ServiceState.java33
1 files changed, 30 insertions, 3 deletions
diff --git a/telephony/java/android/telephony/ServiceState.java b/telephony/java/android/telephony/ServiceState.java
index 48a40fa..6c66559 100644
--- a/telephony/java/android/telephony/ServiceState.java
+++ b/telephony/java/android/telephony/ServiceState.java
@@ -113,6 +113,8 @@ public class ServiceState implements Parcelable {
private String mOperatorNumeric;
private boolean mIsManualNetworkSelection;
+ private boolean mIsEmergencyOnly;
+
//***** CDMA
private int mRadioTechnology;
private boolean mCssIndicator;
@@ -170,6 +172,7 @@ public class ServiceState implements Parcelable {
mCdmaDefaultRoamingIndicator = s.mCdmaDefaultRoamingIndicator;
mCdmaEriIconIndex = s.mCdmaEriIconIndex;
mCdmaEriIconMode = s.mCdmaEriIconMode;
+ mIsEmergencyOnly = s.mIsEmergencyOnly;
}
/**
@@ -190,6 +193,7 @@ public class ServiceState implements Parcelable {
mCdmaDefaultRoamingIndicator = in.readInt();
mCdmaEriIconIndex = in.readInt();
mCdmaEriIconMode = in.readInt();
+ mIsEmergencyOnly = in.readInt() != 0;
}
public void writeToParcel(Parcel out, int flags) {
@@ -207,6 +211,7 @@ public class ServiceState implements Parcelable {
out.writeInt(mCdmaDefaultRoamingIndicator);
out.writeInt(mCdmaEriIconIndex);
out.writeInt(mCdmaEriIconMode);
+ out.writeInt(mIsEmergencyOnly ? 1 : 0);
}
public int describeContents() {
@@ -250,6 +255,13 @@ public class ServiceState implements Parcelable {
/**
* @hide
*/
+ public boolean isEmergencyOnly() {
+ return mIsEmergencyOnly;
+ }
+
+ /**
+ * @hide
+ */
public int getCdmaRoamingIndicator(){
return this.mCdmaRoamingIndicator;
}
@@ -330,7 +342,8 @@ public class ServiceState implements Parcelable {
+ ((null == mOperatorAlphaShort) ? 0 : mOperatorAlphaShort.hashCode())
+ ((null == mOperatorNumeric) ? 0 : mOperatorNumeric.hashCode())
+ mCdmaRoamingIndicator
- + mCdmaDefaultRoamingIndicator);
+ + mCdmaDefaultRoamingIndicator
+ + (mIsEmergencyOnly ? 1 : 0));
}
@Override
@@ -359,7 +372,8 @@ public class ServiceState implements Parcelable {
&& equalsHandlesNulls(mSystemId, s.mSystemId)
&& equalsHandlesNulls(mCdmaRoamingIndicator, s.mCdmaRoamingIndicator)
&& equalsHandlesNulls(mCdmaDefaultRoamingIndicator,
- s.mCdmaDefaultRoamingIndicator));
+ s.mCdmaDefaultRoamingIndicator)
+ && mIsEmergencyOnly == s.mIsEmergencyOnly);
}
@Override
@@ -418,7 +432,8 @@ public class ServiceState implements Parcelable {
+ " " + mNetworkId
+ " " + mSystemId
+ "RoamInd: " + mCdmaRoamingIndicator
- + "DefRoamInd: " + mCdmaDefaultRoamingIndicator);
+ + "DefRoamInd: " + mCdmaDefaultRoamingIndicator
+ + "EmergOnly: " + mIsEmergencyOnly);
}
public void setStateOutOfService() {
@@ -436,6 +451,7 @@ public class ServiceState implements Parcelable {
mCdmaDefaultRoamingIndicator = -1;
mCdmaEriIconIndex = -1;
mCdmaEriIconMode = -1;
+ mIsEmergencyOnly = false;
}
// TODO - can't this be combined with the above func..
@@ -454,6 +470,7 @@ public class ServiceState implements Parcelable {
mCdmaDefaultRoamingIndicator = -1;
mCdmaEriIconIndex = -1;
mCdmaEriIconMode = -1;
+ mIsEmergencyOnly = false;
}
public void setState(int state) {
@@ -464,6 +481,14 @@ public class ServiceState implements Parcelable {
mRoaming = roaming;
}
+
+ /**
+ * @hide
+ */
+ public void setEmergencyOnly(boolean emergencyOnly) {
+ mIsEmergencyOnly = emergencyOnly;
+ }
+
/**
* @hide
*/
@@ -542,6 +567,7 @@ public class ServiceState implements Parcelable {
mSystemId = m.getInt("systemId");
mCdmaRoamingIndicator = m.getInt("cdmaRoamingIndicator");
mCdmaDefaultRoamingIndicator = m.getInt("cdmaDefaultRoamingIndicator");
+ mIsEmergencyOnly = m.getBoolean("emergencyOnly");
}
/**
@@ -563,6 +589,7 @@ public class ServiceState implements Parcelable {
m.putInt("systemId", mSystemId);
m.putInt("cdmaRoamingIndicator", mCdmaRoamingIndicator);
m.putInt("cdmaDefaultRoamingIndicator", mCdmaDefaultRoamingIndicator);
+ m.putBoolean("emergencyOnly", Boolean.valueOf(mIsEmergencyOnly));
}
//***** CDMA