diff options
author | Marvin Zhang <marvinz@motorola.com> | 2022-05-10 23:34:17 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-05-10 23:34:17 +0000 |
commit | cf442786d2ea7ebcc0b3a10426f8239827ae5a01 (patch) | |
tree | fdfff16d6bca99b151d21b5e714e12f4bbad06d5 | |
parent | c20f59894d50fc8c03d17cbef537b5ac1e872ea7 (diff) | |
parent | 3ea02ef3189c0f28e75366c590f867fb527b48cb (diff) | |
download | carrier_settings-cf442786d2ea7ebcc0b3a10426f8239827ae5a01.tar.gz |
Add support for "double" and "bundle" in pb generating script am: 15640c00bc am: 46ea599a96 am: 7e21d2d5b9 am: 3ea02ef318
Original change: https://android-review.googlesource.com/c/platform/tools/carrier_settings/+/2093949
Change-Id: I6d44b3fe2b037053cf331b5eaa66ff4061a0881d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | java/CarrierConfigConverterV2.java | 47 |
1 files changed, 40 insertions, 7 deletions
diff --git a/java/CarrierConfigConverterV2.java b/java/CarrierConfigConverterV2.java index 2f8d254..2ba11a7 100644 --- a/java/CarrierConfigConverterV2.java +++ b/java/CarrierConfigConverterV2.java @@ -592,7 +592,8 @@ public final class CarrierConfigConverterV2 { nList = element.getElementsByTagName("boolean"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -604,7 +605,8 @@ public final class CarrierConfigConverterV2 { nList = element.getElementsByTagName("int"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -616,7 +618,8 @@ public final class CarrierConfigConverterV2 { nList = element.getElementsByTagName("long"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -624,11 +627,25 @@ public final class CarrierConfigConverterV2 { long value = Long.parseLong(eElement.getAttribute("value")); configMap.put(key, CarrierConfig.Config.newBuilder().setLongValue(value).build()); } + // double value + nList = element.getElementsByTagName("double"); + for (int i = 0; i < nList.getLength(); i++) { + Node nNode = nList.item(i); + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { + continue; + } + Element eElement = (Element) nNode; + String key = eElement.getAttribute("name"); + double value = Double.parseDouble(eElement.getAttribute("value")); + configMap.put(key, CarrierConfig.Config.newBuilder().setDoubleValue(value).build()); + } // text value nList = element.getElementsByTagName("string"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -643,7 +660,8 @@ public final class CarrierConfigConverterV2 { nList = element.getElementsByTagName("string-array"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -662,11 +680,12 @@ public final class CarrierConfigConverterV2 { } configMap.put(key, cccb.setTextArray(cctb.build()).build()); } - // bool array + // int array nList = element.getElementsByTagName("int-array"); for (int i = 0; i < nList.getLength(); i++) { Node nNode = nList.item(i); - if (nNode.getNodeType() != Node.ELEMENT_NODE) { + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { continue; } Element eElement = (Element) nNode; @@ -685,6 +704,20 @@ public final class CarrierConfigConverterV2 { } configMap.put(key, cccb.setIntArray(ccib.build()).build()); } + // pbundle_as_map + nList = element.getElementsByTagName("pbundle_as_map"); + for (int i = 0; i < nList.getLength(); i++) { + Node nNode = nList.item(i); + if (nNode.getNodeType() != Node.ELEMENT_NODE || + !nNode.getParentNode().isSameNode(element)) { + continue; + } + Element eElement = (Element) nNode; + String key = eElement.getAttribute("name"); + HashMap<String, CarrierConfig.Config> value = parseCarrierConfigToMap(eElement); + configMap.put(key, CarrierConfig.Config.newBuilder() + .setBundle(toCarrierConfigBuilder(value)).build()); + } return configMap; } |