X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fgcr%2Fxml%2FDomContent.java;h=0b68a772c623067b8a772b36579b662cea281f57;hb=865fc51900459b888938cc0d6943673ee6f20d09;hp=57e6ba7cecea5974af10b9776a98caa58d6a7458;hpb=212a43ed44ffc186b69e838d65a1421fd5e1f3a5;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/gcr/xml/DomContent.java b/org.argeo.cms/src/org/argeo/cms/gcr/xml/DomContent.java index 57e6ba7ce..0b68a772c 100644 --- a/org.argeo.cms/src/org/argeo/cms/gcr/xml/DomContent.java +++ b/org.argeo.cms/src/org/argeo/cms/gcr/xml/DomContent.java @@ -2,6 +2,7 @@ package org.argeo.cms.gcr.xml; import java.util.HashSet; import java.util.Iterator; +import java.util.Optional; import java.util.Set; import javax.xml.XMLConstants; @@ -98,15 +99,15 @@ public class DomContent extends AbstractContent implements ProvidedContent { } @Override - public A get(QName key, Class clss) { + public Optional get(QName key, Class clss) { String namespaceUriOrNull = XMLConstants.NULL_NS_URI.equals(key.getNamespaceURI()) ? null : key.getNamespaceURI(); if (element.hasAttributeNS(namespaceUriOrNull, key.getLocalPart())) { String value = element.getAttributeNS(namespaceUriOrNull, key.getLocalPart()); if (clss.isAssignableFrom(String.class)) - return (A) value; + return Optional.of((A) value); else - throw new IllegalArgumentException(); + return Optional.empty(); } else return null; } @@ -121,6 +122,8 @@ public class DomContent extends AbstractContent implements ProvidedContent { value.toString()); return previous; } + + @Override public boolean hasText() {