X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.api%2Fsrc%2Forg%2Fargeo%2Fapi%2Fgcr%2Fspi%2FAbstractContent.java;h=10f36acdf0509ac117871235faa92aea3bba8b9f;hb=e5a22cdc7d0f4918f2740c626e1ab6384bd5ee44;hp=79c59f2f66ad06c0b1cf2ca74b0b6917f1610b9a;hpb=51efb630db7314b67654a03d1bd983b45aa2f1ed;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.api/src/org/argeo/api/gcr/spi/AbstractContent.java b/org.argeo.api/src/org/argeo/api/gcr/spi/AbstractContent.java index 79c59f2f6..10f36acdf 100644 --- a/org.argeo.api/src/org/argeo/api/gcr/spi/AbstractContent.java +++ b/org.argeo.api/src/org/argeo/api/gcr/spi/AbstractContent.java @@ -8,12 +8,15 @@ import java.util.List; import java.util.Map; import java.util.Set; +import javax.xml.namespace.QName; + import org.argeo.api.gcr.Content; +import org.argeo.api.gcr.CrName; -public abstract class AbstractContent extends AbstractMap implements Content { +public abstract class AbstractContent extends AbstractMap implements Content { @Override - public Set> entrySet() { + public Set> entrySet() { // Set> result = new HashSet<>(); // for (String key : keys()) { // Entry entry = new Entry() { @@ -36,13 +39,13 @@ public abstract class AbstractContent extends AbstractMap implem // }; // result.add(entry); // } - Set> result = new AttrSet(); + Set> result = new AttrSet(); return result; } - protected abstract Iterable keys(); + protected abstract Iterable keys(); - protected abstract void removeAttr(String key); + protected abstract void removeAttr(QName key); @Override public String getPath() { @@ -50,8 +53,9 @@ public abstract class AbstractContent extends AbstractMap implem collectAncestors(ancestors, this); StringBuilder path = new StringBuilder(); for (Content c : ancestors) { - String name = c.getName(); - if (!"".equals(name)) + QName name = c.getName(); + // FIXME + if (!CrName.ROOT.get().equals(name)) path.append('/').append(name); } return path.toString(); @@ -74,21 +78,21 @@ public abstract class AbstractContent extends AbstractMap implem @Override public String toString() { - return "content "+getPath(); + return "content " + getPath(); } /* * SUB CLASSES */ - class AttrSet extends AbstractSet> { + class AttrSet extends AbstractSet> { @Override - public Iterator> iterator() { - final Iterator keys = keys().iterator(); - Iterator> it = new Iterator>() { + public Iterator> iterator() { + final Iterator keys = keys().iterator(); + Iterator> it = new Iterator>() { - String key = null; + QName key = null; @Override public boolean hasNext() { @@ -96,11 +100,11 @@ public abstract class AbstractContent extends AbstractMap implem } @Override - public Entry next() { + public Entry next() { key = keys.next(); // TODO check type Object value = get(key, Object.class); - AbstractMap.SimpleEntry entry = new SimpleEntry<>(key, value); + AbstractMap.SimpleEntry entry = new SimpleEntry<>(key, value); return entry; } @@ -120,7 +124,7 @@ public abstract class AbstractContent extends AbstractMap implem @Override public int size() { int count = 0; - for (String key : keys()) { + for (QName key : keys()) { count++; } return count;