Move qualified name to JCR bundle
[lgpl/argeo-commons.git] / org.argeo.enterprise / src / org / argeo / naming / LdapAttrs.java
index 006f0e767e3ed045beb058ec23efada81f3f96f8..cfabeb7d6e9a4905af87c32f230534b819656caa 100644 (file)
@@ -267,6 +267,9 @@ public enum LdapAttrs implements SpecifiedName {
        /** */
        displayName("2.16.840.1.113730.3.1.241", "RFC 2798"),
 
+       // Sun memberOf
+       memberOf("1.2.840.113556.1.2.102", "389 DS memberOf"),
+
        // KERBEROS (partial)
        krbPrincipalName("2.16.840.1.113719.1.301.6.8.1", "Novell Kerberos Schema Definitions"),
 
@@ -285,7 +288,7 @@ public enum LdapAttrs implements SpecifiedName {
 
        public final static String DN = "dn";
 
-       private final static String LDAP_ = "ldap:";
+//     private final static String LDAP_ = "ldap:";
 
        private final String oid, spec;
 
@@ -304,8 +307,35 @@ public enum LdapAttrs implements SpecifiedName {
                return spec;
        }
 
+       public String getPrefix() {
+               return prefix();
+       }
+
+       public static String prefix() {
+               return "ldap";
+       }
+
        public String property() {
-               return new StringBuilder(LDAP_).append(name()).toString();
+               return qualified();
+       }
+
+       public String qualified() {
+               String prefix = getPrefix();
+               return prefix != null ? prefix + ":" + name() : name();
+       }
+
+       public String getNamespace() {
+               return namespace();
+       }
+
+       public static String namespace() {
+               return "http://www.argeo.org/ns/ldap";
+       }
+
+       @Override
+       public final String toString() {
+               // must return the name
+               return name();
        }
 
 }