From: Robert Varga Date: Mon, 4 Jul 2022 20:28:08 +0000 (+0200) Subject: Use of instanceof pattern match in XmlElement X-Git-Tag: v4.0.0~27 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=netconf.git;a=commitdiff_plain;h=3eeb70321434f6bf3ec6a87eec8a52dd995e305a Use of instanceof pattern match in XmlElement Improve expressiveness through check-and-cast mechanics. Change-Id: Id837cf0e8f1791d1a4dae5a28b468209566a308f Signed-off-by: Robert Varga --- diff --git a/netconf/netconf-api/src/main/java/org/opendaylight/netconf/api/xml/XmlElement.java b/netconf/netconf-api/src/main/java/org/opendaylight/netconf/api/xml/XmlElement.java index c4346ee7e1..caba82a515 100644 --- a/netconf/netconf-api/src/main/java/org/opendaylight/netconf/api/xml/XmlElement.java +++ b/netconf/netconf-api/src/main/java/org/opendaylight/netconf/api/xml/XmlElement.java @@ -154,7 +154,7 @@ public final class XmlElement { } public void appendChild(final Element toAppend) { - this.element.appendChild(toAppend); + element.appendChild(toAppend); } public Element getDomElement() { @@ -181,12 +181,8 @@ public final class XmlElement { NodeList childNodes = element.getChildNodes(); final List result = new ArrayList<>(); for (int i = 0; i < childNodes.getLength(); i++) { - Node item = childNodes.item(i); - if (!(item instanceof Element)) { - continue; - } - if (strat.accept((Element) item)) { - result.add(new XmlElement((Element) item)); + if (childNodes.item(i) instanceof Element elem && strat.accept(elem)) { + result.add(new XmlElement(elem)); } } @@ -321,10 +317,8 @@ public final class XmlElement { return DEFAULT_NAMESPACE_PREFIX; } for (int i = 0; i < childNodes.getLength(); i++) { - Node textChild = childNodes.item(i); - if (textChild instanceof Text) { - String content = textChild.getTextContent(); - return content.trim(); + if (childNodes.item(i) instanceof Text textChild) { + return textChild.getTextContent().trim(); } } throw new DocumentedException(getName() + " should contain text.", @@ -334,9 +328,8 @@ public final class XmlElement { public Optional getOnlyTextContentOptionally() { // only return text content if this node has exactly one Text child node if (element.getChildNodes().getLength() == 1) { - Node item = element.getChildNodes().item(0); - if (item instanceof Text) { - return Optional.of(((Text) item).getWholeText()); + if (element.getChildNodes().item(0) instanceof Text textChild) { + return Optional.of(textChild.getWholeText()); } } return Optional.empty();