X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.api.acr%2Fsrc%2Forg%2Fargeo%2Fapi%2Facr%2FContent.java;h=7ec29594713e885d8f39a2efa00c0a24b186f7f3;hb=60bf0339227cc064a4ead694e3a699581a025233;hp=f7600f540e63ea3b20311c94f2824cd2c7703151;hpb=4086635cfaa04c8a184124048794398b0ba96a55;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.api.acr/src/org/argeo/api/acr/Content.java b/org.argeo.api.acr/src/org/argeo/api/acr/Content.java index f7600f540..7ec295947 100644 --- a/org.argeo.api.acr/src/org/argeo/api/acr/Content.java +++ b/org.argeo.api.acr/src/org/argeo/api/acr/Content.java @@ -90,7 +90,11 @@ public interface Content extends Iterable, Map { * CONTENT OPERATIONS */ /** Adds a new empty {@link Content} to this {@link Content}. */ - Content add(QName name, QName... classes); + Content add(QName name, QName... contentClass); + + default Content add(QName name, QNamed... contentClass) { + return add(name, toQNames(contentClass)); + } /** * Adds a new {@link Content} to this {@link Content}, setting the provided @@ -135,10 +139,7 @@ public interface Content extends Iterable, Map { /** AND */ default boolean isContentClass(QNamed... contentClass) { - List lst = new ArrayList<>(); - for (QNamed qNamed : contentClass) - lst.add(qNamed.qName()); - return isContentClass(lst.toArray(new QName[lst.size()])); + return isContentClass(toQNames(contentClass)); } /** OR */ @@ -153,10 +154,14 @@ public interface Content extends Iterable, Map { /** OR */ default boolean hasContentClass(QNamed... contentClass) { - List lst = new ArrayList<>(); - for (QNamed qNamed : contentClass) - lst.add(qNamed.qName()); - return hasContentClass(lst.toArray(new QName[lst.size()])); + return hasContentClass(toQNames(contentClass)); + } + + static QName[] toQNames(QNamed... names) { + QName[] res = new QName[names.length]; + for (int i = 0; i < names.length; i++) + res[i] = names[i].qName(); + return res; } /*