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() {