X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.enterprise%2Fsrc%2Forg%2Fargeo%2Fnaming%2FLdapAttrs.java;h=cfabeb7d6e9a4905af87c32f230534b819656caa;hb=94ec9b5a0282c8119ee9831688124bc96f3a62b8;hp=29f6e005f5933beca663f0b7cdf4cf3c3cf3a1c3;hpb=b334cd41b64d0658aae9125c58d6a1194eccb087;p=lgpl%2Fargeo-commons.git
diff --git a/org.argeo.enterprise/src/org/argeo/naming/LdapAttrs.java b/org.argeo.enterprise/src/org/argeo/naming/LdapAttrs.java
index 29f6e005f..cfabeb7d6 100644
--- a/org.argeo.enterprise/src/org/argeo/naming/LdapAttrs.java
+++ b/org.argeo.enterprise/src/org/argeo/naming/LdapAttrs.java
@@ -1,11 +1,13 @@
package org.argeo.naming;
/**
- * Standard LDAP attributes as per
- * https://www.ldap.com/ldap-
- * oid-reference
+ * Standard LDAP attributes as per:
+ * - Standard LDAP
+ * - Kerberos
+ * LDAP (partial)
*/
-public enum LdapAttrs implements SpecifiedName{
+public enum LdapAttrs implements SpecifiedName {
/** */
uid("0.9.2342.19200300.100.1.1", "RFC 4519"),
/** */
@@ -263,11 +265,30 @@ public enum LdapAttrs implements SpecifiedName{
/** */
userPKCS12("2.16.840.1.113730.3.1.216", "RFC 2798"),
/** */
- displayName("2.16.840.1.113730.3.1.241", "RFC 2798");
+ 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"),
+
+ // RFC 2985 and RFC 3039 (partial)
+ dateOfBirth("1.3.6.1.5.5.7.9.1", "RFC 2985"),
+ /** */
+ placeOfBirth("1.3.6.1.5.5.7.9.2", "RFC 2985"),
+ /** */
+ gender("1.3.6.1.5.5.7.9.3", "RFC 2985"),
+ /** */
+ countryOfCitizenship("1.3.6.1.5.5.7.9.4", "RFC 2985"),
+ /** */
+ countryOfResidence("1.3.6.1.5.5.7.9.5", "RFC 2985"),
+ //
+ ;
public final static String DN = "dn";
- private final static String LDAP_ = "ldap:";
+// private final static String LDAP_ = "ldap:";
private final String oid, spec;
@@ -286,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();
}
}