You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by sm...@apache.org on 2019/04/17 13:46:55 UTC

[directory-fortress-core] branch master updated: FC-267 - Working w/ apacheds

This is an automated email from the ASF dual-hosted git repository.

smckinney pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-fortress-core.git


The following commit(s) were added to refs/heads/master by this push:
     new 7a7c0c7  FC-267 - Working w/ apacheds
7a7c0c7 is described below

commit 7a7c0c7749bc2001d7271dcd2deee5ec1b5fbdef
Author: Shawn McKinney <sm...@apache.org>
AuthorDate: Wed Apr 17 08:46:50 2019 -0500

    FC-267 - Working w/ apacheds
---
 ldap/schema/apacheds-fortress.ldif                 | 36 ++++++++++++++++++++--
 ldap/schema/fortress.schema                        | 19 ++++++++++--
 .../directory/fortress/core/impl/ConfigDAO.java    | 24 +++++++--------
 3 files changed, 62 insertions(+), 17 deletions(-)

diff --git a/ldap/schema/apacheds-fortress.ldif b/ldap/schema/apacheds-fortress.ldif
index 2071313..1071976 100644
--- a/ldap/schema/apacheds-fortress.ldif
+++ b/ldap/schema/apacheds-fortress.ldif
@@ -470,6 +470,28 @@ m-equality: caseIgnoreMatch
 m-substr: caseIgnoreSubstringsMatch
 m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
 
+dn: m-oid=1.3.6.1.4.1.18060.17.1.39, ou=attributetypes, cn=fortress, ou=schema
+objectclass: metaAttributeType
+objectclass: metaTop
+objectclass: top
+m-oid: 1.3.6.1.4.1.18060.17.1.39
+m-name: ftUidNumber
+m-description: Sequence for uidNumber
+m-equality: integerMatch
+m-syntax: 1.3.6.1.4.1.1466.115.121.1.27
+m-singleValue: TRUE
+
+dn: m-oid=1.3.6.1.4.1.18060.17.1.40, ou=attributetypes, cn=fortress, ou=schema
+objectclass: metaAttributeType
+objectclass: metaTop
+objectclass: top
+m-oid: 1.3.6.1.4.1.18060.17.1.40
+m-name: ftGidNumber
+m-description: Sequence for gidNumber
+m-equality: integerMatch
+m-syntax: 1.3.6.1.4.1.1466.115.121.1.27
+m-singleValue: TRUE
+
 dn: ou=comparators, cn=fortress, ou=schema
 objectclass: organizationalUnit
 objectclass: top
@@ -704,6 +726,17 @@ m-may: ftModifier
 m-may: ftModCode
 m-may: ftModId
 
+dn: m-oid=1.3.6.1.4.1.18060.17.3.5, ou=objectclasses, cn=fortress, ou=schema
+objectclass: metaObjectClass
+objectclass: metaTop
+objectclass: top
+m-oid: 1.3.6.1.4.1.18060.17.3.5
+m-name: ftConfig
+m-description: Fortress Config Properties
+m-typeObjectClass: AUXILIARY
+m-must: ftGidNumber
+m-must: ftUidNumber
+
 dn: ou=syntaxcheckers, cn=fortress, ou=schema
 objectclass: organizationalUnit
 objectclass: top
@@ -712,5 +745,4 @@ ou: syntaxcheckers
 dn: ou=syntaxes, cn=fortress, ou=schema
 objectclass: organizationalUnit
 objectclass: top
-ou: syntaxes
-
+ou: syntaxes
\ No newline at end of file
diff --git a/ldap/schema/fortress.schema b/ldap/schema/fortress.schema
index aafd73a..c66b226 100644
--- a/ldap/schema/fortress.schema
+++ b/ldap/schema/fortress.schema
@@ -343,6 +343,20 @@ attributetype ( ftAtId:38
     SUBSTR caseIgnoreSubstringsMatch
     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
 
+# A39: uidNumber storage attribute for sequencing, type INTEGER
+attributetype ( ftAtId:39
+    NAME 'ftUidNumber'
+    DESC 'Sequence for uidNumber'
+    EQUALITY integerMatch
+    SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
+
+# A40: gidNumber storage attribute for sequencing, type INTEGER
+attributetype ( ftAtId:40
+    NAME 'ftGidNumber'
+    DESC 'Sequence for uidNumber'
+    EQUALITY integerMatch
+    SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
+
 
 # Builtin:
 #attributetype ( 1.3.6.1.1.1.1.1 NAME 'gidNumber'
@@ -353,7 +367,6 @@ attributetype ( ftAtId:38
 #  SINGLE-VALUE )
 
 
-
 ######################################################################
 ## 2. Apache Fortress Structural object class definitions
 ######################################################################
@@ -591,7 +604,7 @@ objectclass ( ftAxId:5
     DESC 'Fortress Config Properties'
     AUXILIARY
     MUST (
-       	gidNumber $
-       	uidNumber
+       	ftGidNumber $
+       	ftUidNumber
         )
     )
diff --git a/src/main/java/org/apache/directory/fortress/core/impl/ConfigDAO.java b/src/main/java/org/apache/directory/fortress/core/impl/ConfigDAO.java
index a2e8b04..0ad6b55 100755
--- a/src/main/java/org/apache/directory/fortress/core/impl/ConfigDAO.java
+++ b/src/main/java/org/apache/directory/fortress/core/impl/ConfigDAO.java
@@ -44,9 +44,6 @@ import org.apache.directory.ldap.client.api.LdapConnection;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import static org.apache.directory.fortress.core.GlobalIds.GID_NUMBER;
-import static org.apache.directory.fortress.core.GlobalIds.UID_NUMBER;
-
 
 /**
  * This class provides data access for the standard ldap object device that has been extended to support name/value pairs.
@@ -87,6 +84,9 @@ final class ConfigDAO extends LdapDataProvider
     private static final String CLS_NM = ConfigDAO.class.getName();
     private static final Logger LOG = LoggerFactory.getLogger( CLS_NM );
     private String CONFIG_ROOT_DN;
+    public static final String GID_NUMBER_SEQUENCE = "ftGidNumber";
+    public static final String UID_NUMBER_SEQUENCE = "ftUidNumber";
+
 
     private final String[] CONFIG_OBJ_CLASS =
     {
@@ -95,7 +95,7 @@ final class ConfigDAO extends LdapDataProvider
 
     private final String[] CONFIG_ATRS =
     {
-        SchemaConstants.CN_AT, GlobalIds.PROPS, GID_NUMBER, UID_NUMBER
+        SchemaConstants.CN_AT, GlobalIds.PROPS, GID_NUMBER_SEQUENCE, UID_NUMBER_SEQUENCE
 
     };
 
@@ -129,19 +129,19 @@ final class ConfigDAO extends LdapDataProvider
             // These attributes hold sequence numbers:
             if (StringUtils.isNotEmpty(cfg.getUidNumber()))
             {
-                myEntry.add( GlobalIds.UID_NUMBER, cfg.getUidNumber() );
+                myEntry.add( UID_NUMBER_SEQUENCE, cfg.getUidNumber() );
             }
             else
             {
-                myEntry.add( GlobalIds.UID_NUMBER, "0" );
+                myEntry.add( UID_NUMBER_SEQUENCE, "0" );
             }
             if (StringUtils.isNotEmpty(cfg.getGidNumber()))
             {
-                myEntry.add( GlobalIds.GID_NUMBER, cfg.getGidNumber() );
+                myEntry.add( GID_NUMBER_SEQUENCE, cfg.getGidNumber() );
             }
             else
             {
-                myEntry.add( GlobalIds.GID_NUMBER, "0" );
+                myEntry.add( GID_NUMBER_SEQUENCE, "0" );
             }
             ld = getAdminConnection();
             add( ld, myEntry, cfg );
@@ -188,12 +188,12 @@ final class ConfigDAO extends LdapDataProvider
             }
             if (StringUtils.isNotEmpty(cfg.getUidNumber()))
             {
-                mods.add(new DefaultModification(ModificationOperation.REPLACE_ATTRIBUTE, GlobalIds.UID_NUMBER,
+                mods.add(new DefaultModification(ModificationOperation.REPLACE_ATTRIBUTE, UID_NUMBER_SEQUENCE,
                         cfg.getUidNumber()));
             }
             if (StringUtils.isNotEmpty(cfg.getGidNumber()))
             {
-                mods.add(new DefaultModification(ModificationOperation.REPLACE_ATTRIBUTE, GlobalIds.GID_NUMBER,
+                mods.add(new DefaultModification(ModificationOperation.REPLACE_ATTRIBUTE, GID_NUMBER_SEQUENCE,
                         cfg.getGidNumber()));
             }
             if ( mods.size() > 0 )
@@ -335,8 +335,8 @@ final class ConfigDAO extends LdapDataProvider
             Entry findEntry = read( ld, dn, CONFIG_ATRS );
             configuration.setName( name );
             configuration.addProperties( PropUtil.getProperties( getAttributes( findEntry, GlobalIds.PROPS ) ) );
-            configuration.setUidNumber( getAttribute( findEntry, GlobalIds.UID_NUMBER ) );
-            configuration.setGidNumber( getAttribute( findEntry, GlobalIds.GID_NUMBER ) );
+            configuration.setUidNumber( getAttribute( findEntry, UID_NUMBER_SEQUENCE ) );
+            configuration.setGidNumber( getAttribute( findEntry, GID_NUMBER_SEQUENCE ) );
         }
         catch ( LdapNoSuchObjectException e )
         {