am 569167ec: Merge "read MVNO config and insert DB"
* commit '569167ec35fa4f27e9a617dea3f34db9d4c46101':
read MVNO config and insert DB
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index f9b1e58..62435ee 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -57,7 +57,7 @@
private static final String DATABASE_NAME = "telephony.db";
private static final boolean DBG = true;
- private static final int DATABASE_VERSION = 7 << 16;
+ private static final int DATABASE_VERSION = 8 << 16;
private static final int URL_TELEPHONY = 1;
private static final int URL_CURRENT = 2;
private static final int URL_ID = 3;
@@ -148,7 +148,9 @@
"protocol TEXT," +
"roaming_protocol TEXT," +
"carrier_enabled BOOLEAN," +
- "bearer INTEGER);");
+ "bearer INTEGER," +
+ "mvno_type TEXT," +
+ "mvno_match_data TEXT);");
initDatabase(db);
}
@@ -233,6 +235,15 @@
" ADD COLUMN bearer INTEGER DEFAULT 0;");
oldVersion = 7 << 16 | 6;
}
+ if (oldVersion < (8 << 16 | 6)) {
+ // Add mvno_type, mvno_match_data fields to the APN.
+ // The XML file does not change.
+ db.execSQL("ALTER TABLE " + CARRIERS_TABLE +
+ " ADD COLUMN mvno_type TEXT DEFAULT '';");
+ db.execSQL("ALTER TABLE " + CARRIERS_TABLE +
+ " ADD COLUMN mvno_match_data TEXT DEFAULT '';");
+ oldVersion = 8 << 16 | 6;
+ }
}
/**
@@ -308,6 +319,15 @@
if (bearer != null) {
map.put(Telephony.Carriers.BEARER, Integer.parseInt(bearer));
}
+
+ String mvno_type = parser.getAttributeValue(null, "mvno_type");
+ if (mvno_type != null) {
+ String mvno_match_data = parser.getAttributeValue(null, "mvno_match_data");
+ if (mvno_match_data != null) {
+ map.put(Telephony.Carriers.MVNO_TYPE, mvno_type);
+ map.put(Telephony.Carriers.MVNO_MATCH_DATA, mvno_match_data);
+ }
+ }
return map;
}
@@ -361,6 +381,12 @@
if (row.containsKey(Telephony.Carriers.BEARER) == false) {
row.put(Telephony.Carriers.BEARER, 0);
}
+ if (row.containsKey(Telephony.Carriers.MVNO_TYPE) == false) {
+ row.put(Telephony.Carriers.MVNO_TYPE, "");
+ }
+ if (row.containsKey(Telephony.Carriers.MVNO_MATCH_DATA) == false) {
+ row.put(Telephony.Carriers.MVNO_MATCH_DATA, "");
+ }
db.insert(CARRIERS_TABLE, null, row);
}
}
@@ -565,6 +591,12 @@
if (!values.containsKey(Telephony.Carriers.BEARER)) {
values.put(Telephony.Carriers.BEARER, 0);
}
+ if (!values.containsKey(Telephony.Carriers.MVNO_TYPE)) {
+ values.put(Telephony.Carriers.MVNO_TYPE, "");
+ }
+ if (!values.containsKey(Telephony.Carriers.MVNO_MATCH_DATA)) {
+ values.put(Telephony.Carriers.MVNO_MATCH_DATA, "");
+ }
long rowID = db.insert(CARRIERS_TABLE, null, values);
if (rowID > 0)