X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Facr%2Fdirectory%2FAbstractDirectoryContent.java;h=b737b50a1ea48ca63bb1eddcfd544d6c55d5778e;hb=bb605887a55790079fbf19628b232d2089efe13e;hp=2d337c0dda38d78bdfc5d78a428a6ae110942cd8;hpb=da1148af1d866cb815c69dd3d9a46415bcf8e7ef;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/acr/directory/AbstractDirectoryContent.java b/org.argeo.cms/src/org/argeo/cms/acr/directory/AbstractDirectoryContent.java index 2d337c0dd..b737b50a1 100644 --- a/org.argeo.cms/src/org/argeo/cms/acr/directory/AbstractDirectoryContent.java +++ b/org.argeo.cms/src/org/argeo/cms/acr/directory/AbstractDirectoryContent.java @@ -10,15 +10,15 @@ import java.util.TreeSet; import javax.xml.namespace.QName; +import org.argeo.api.acr.ArgeoNamespace; import org.argeo.api.acr.ContentName; import org.argeo.api.acr.CrAttributeType; -import org.argeo.api.acr.CrName; import org.argeo.api.acr.NamespaceUtils; +import org.argeo.api.acr.ldap.LdapAttr; +import org.argeo.api.acr.ldap.LdapObj; import org.argeo.api.acr.spi.ContentProvider; import org.argeo.api.acr.spi.ProvidedSession; import org.argeo.cms.acr.AbstractContent; -import org.argeo.util.naming.LdapAttrs; -import org.argeo.util.naming.LdapObjs; abstract class AbstractDirectoryContent extends AbstractContent { protected final DirectoryContentProvider provider; @@ -50,11 +50,11 @@ abstract class AbstractDirectoryContent extends AbstractContent { Set keys = new TreeSet<>(NamespaceUtils.QNAME_COMPARATOR); keys: for (Enumeration it = properties.keys(); it.hasMoreElements();) { String key = it.nextElement(); - if (key.equalsIgnoreCase(LdapAttrs.objectClass.name())) + if (key.equalsIgnoreCase(LdapAttr.objectClass.name())) continue keys; - if (key.equalsIgnoreCase(LdapAttrs.objectClasses.name())) + if (key.equalsIgnoreCase(LdapAttr.objectClasses.name())) continue keys; - ContentName name = new ContentName(CrName.LDAP_NAMESPACE_URI, key, provider); + ContentName name = new ContentName(ArgeoNamespace.LDAP_NAMESPACE_URI, key, provider); keys.add(name); } return keys; @@ -64,16 +64,16 @@ abstract class AbstractDirectoryContent extends AbstractContent { public List getContentClasses() { Dictionary properties = doGetProperties(); List contentClasses = new ArrayList<>(); - String objectClass = properties.get(LdapAttrs.objectClass.name()).toString(); - contentClasses.add(new ContentName(CrName.LDAP_NAMESPACE_URI, objectClass, provider)); + String objectClass = properties.get(LdapAttr.objectClass.name()).toString(); + contentClasses.add(new ContentName(ArgeoNamespace.LDAP_NAMESPACE_URI, objectClass, provider)); - String[] objectClasses = properties.get(LdapAttrs.objectClasses.name()).toString().split("\\n"); + String[] objectClasses = properties.get(LdapAttr.objectClasses.name()).toString().split("\\n"); objectClasses: for (String oc : objectClasses) { - if (LdapObjs.top.name().equalsIgnoreCase(oc)) + if (LdapObj.top.name().equalsIgnoreCase(oc)) continue objectClasses; if (objectClass.equalsIgnoreCase(oc)) continue objectClasses; - contentClasses.add(new ContentName(CrName.LDAP_NAMESPACE_URI, oc, provider)); + contentClasses.add(new ContentName(ArgeoNamespace.LDAP_NAMESPACE_URI, oc, provider)); } return contentClasses; } @@ -81,8 +81,7 @@ abstract class AbstractDirectoryContent extends AbstractContent { @Override public Object put(QName key, Object value) { Object previous = get(key); - // TODO deal with typing - doGetProperties().put(key.getLocalPart(), value); + provider.getUserManager().edit(() -> doGetProperties().put(key.getLocalPart(), value)); return previous; }