diff options
author | Marvin Zhang <marvinz@motorola.com> | 2022-05-10 23:17:11 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-05-10 23:17:11 +0000 |
commit | 3ea02ef3189c0f28e75366c590f867fb527b48cb (patch) | |
tree | fdfff16d6bca99b151d21b5e714e12f4bbad06d5 | |
parent | 0077755afaae684304bb0abe5cc1bacce7f657a9 (diff) | |
parent | 7e21d2d5b9ac42ded7d7e9a92492baf930774d8b (diff) | |
download | carrier_settings-3ea02ef3189c0f28e75366c590f867fb527b48cb.tar.gz |
Add support for "double" and "bundle" in pb generating script am: 15640c00bc am: 46ea599a96 am: 7e21d2d5b9
Original change: https://android-review.googlesource.com/c/platform/tools/carrier_settings/+/2093949
Change-Id: Ib58372050a1fe110e3776b023f5387f67bf847eb
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; } |