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 2014/10/22 17:45:02 UTC

[43/51] [partial] Rename packages from org.openldap.fortress to org.apache.directory.fortress.core. Change default suffix to org.apache. Switch default ldap api from unbound to apache ldap.

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Addroleinheritance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Addroleinheritance.java b/src/main/java/org/apache/directory/fortress/core/ant/Addroleinheritance.java
new file mode 100755
index 0000000..f1e2f4d
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Addroleinheritance.java
@@ -0,0 +1,85 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Relationship;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Relationship}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#addInheritance(org.apache.directory.fortress.core.rbac.Role, org.apache.directory.fortress.core.rbac.Role)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Addroleinheritance', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <addroleinheritance>
+ *           ...
+ *         </addroleinheritance>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Addroleinheritance
+{
+    final private List<Relationship> relationships = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Addroleinheritance()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRelationship', is used for derived xml tag 'relationship' in the load script.</p>
+     * <pre>
+     * {@code
+     * <addroleinheritance>
+     *     <relationship child="r2" parent="r1"/>
+     *     <relationship child="r3" parent="r1"/>
+     *     <relationship child="r4" parent="r1"/>
+     * </addroleinheritance>
+     * }
+     * </pre>
+     *
+     * @param relationship contains reference to data element targeted for insertion..
+     */
+    public void addRelationship(Relationship relationship)
+    {
+        this.relationships.add(relationship);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#addRoleInheritances()} to retrieve list of Role relationships as defined in input xml file.
+     *
+     * @return collection containing {@link Relationship}s targeted for insertion.
+     */
+    public List<Relationship> getRelationships()
+    {
+        return this.relationships;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Addsdset.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Addsdset.java b/src/main/java/org/apache/directory/fortress/core/ant/Addsdset.java
new file mode 100755
index 0000000..06d88a3
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Addsdset.java
@@ -0,0 +1,91 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link FortressAntTask} to create new {@link SDSetAnt}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#createSsdSet(org.apache.directory.fortress.core.rbac.SDSet)} or {@link org.apache.directory.fortress.core.AdminMgr#createDsdSet(org.apache.directory.fortress.core.rbac.SDSet)}.
+ *
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Addsdset', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <addsdset>
+ *           ...
+ *         </addsdset>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Addsdset
+{
+    final private List<SDSetAnt> sds = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Addsdset()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addSdset', is used for derived xml tag 'sdset' in the load script.</p>
+     * <pre>
+     * {@code
+     * <addsdset>
+     *     <sdset name="DemoSSD1"
+     *         description="Demo static separation of duties"
+     *         cardinality="2"
+     *         settype="STATIC"
+     *         setmembers="role1,role2"/>
+     *     <sdset name="DemoDSD1"
+     *         description="Demo dynamic separation of duties"
+     *         cardinality="2"
+     *         settype="DYNAMIC"
+     *         setmembers="role1,role3"/>
+     * </addsdset>
+     * }
+     * </pre>
+     *
+     * @param sd contains reference to data element targeted for insertion..
+     */
+    public void addSdset(SDSetAnt sd)
+    {
+        this.sds.add(sd);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addSdsets()} to retrieve list of SDSetAnt as defined in input xml file.
+     *
+     * @return collection containing {@link SDSetAnt}s targeted for insertion.
+     */
+    public List<SDSetAnt> getSdset()
+    {
+        return this.sds;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Addsuffix.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Addsuffix.java b/src/main/java/org/apache/directory/fortress/core/ant/Addsuffix.java
new file mode 100755
index 0000000..cfeb710
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Addsuffix.java
@@ -0,0 +1,84 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.fortress.core.ldap.suffix.Suffix;
+
+/**
+ * The class is used by {@link FortressAntTask} to create new {@link org.apache.directory.fortress.core.ldap.suffix.Suffix} used to drive {@link org.apache.directory.fortress.core.ldap.suffix.SuffixP#add(org.apache.directory.fortress.core.ldap.suffix.Suffix)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Addsuffix', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <addsuffix>
+ *           ...
+ *         </addsuffix>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Addsuffix
+
+{
+    final private List<Suffix> suffixes = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Addsuffix()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addSuffix', is used for derived xml tag 'suffix' in the load script.</p>
+     * <pre>
+     * {@code
+     * <addsuffix>
+     *     <suffix name="jts" dc="com" description="Joshua Tree Software"/>
+     * </addsuffix>
+     * }
+     * </pre>
+     *
+     * @param suffix contains reference to data element targeted for insertion..
+     */
+    public void addSuffix(Suffix suffix)
+    {
+        this.suffixes.add(suffix);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addSuffixes()} to retrieve list of Suffixes as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.ldap.suffix.Suffix}s targeted for insertion.
+     */
+    public List<Suffix> getSuffixes()
+    {
+        return this.suffixes;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Adduser.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Adduser.java b/src/main/java/org/apache/directory/fortress/core/ant/Adduser.java
new file mode 100755
index 0000000..c9ddcf5
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Adduser.java
@@ -0,0 +1,92 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link UserAnt}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#addUser(org.apache.directory.fortress.core.rbac.User)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Adduser', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <adduser>
+ *           ...
+ *         </adduser>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Adduser
+{
+    final private List<UserAnt> users = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Adduser()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addUser', is used for derived xml tag 'user' in the load script.</p>
+     * <pre>
+     * {@code
+     * <adduser>
+     *     <!-- Bad User end time -->
+     *     <user userId="demoUser1" password="password" description="Demo Test User 1" ou="demousrs1" cn="JoeUser1" sn="User1" pwPolicy="Test1" beginTime="0000" endTime="0800" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="1234567" timeout="60"/>
+     *     <!-- Bad User day mask -->
+     *     <user userId="demoUser3" password="password" description="Demo Test User 3" ou="demousrs1" cn="JoeUser3" sn="User3"  pwPolicy="Test1" beginTime="0000" endTime="0000" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="17" timeout="60"/>
+     *     <!-- This one is good -->
+     *     <user userId="demoUser4" password="password" description="Demo Test User 4" ou="demousrs1" cn="JoeUser4" sn="User4"  pwPolicy="Test1" beginTime="0000" endTime="0000" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="1234567" timeout="60"/>
+     *     <!-- Bad User end time -->
+     *     <user userId="demoUser5" password="password" description="Demo Test User 5" ou="demousrs1" cn="JoeUser5" sn="User5"  pwPolicy="Test1" beginTime="0000" endTime="0000" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="1234567" timeout="60"/>
+     *     <!-- Bad User begin date -->
+     *     <user userId="demoUser7" password="password" description="Demo Test User 7" ou="demousrs1" cn="JoeUser7" sn="User7"  pwPolicy="Test1" beginTime="0000" endTime="0000" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="1234567" timeout="60"/>
+     *     <!-- Bad User end date -->
+     *     <user userId="demoUser9" password="password" description="Demo Test User 9" ou="demousrs1" cn="JoeUser9" sn="User9"  pwPolicy="Test1" beginTime="0000" endTime="0000" beginDate="20090101" endDate="20990101" beginLockDate="none" endLockDate="none" dayMask="1234567" timeout="60"/>
+     * </adduser>
+     * }
+     * </pre>
+     *
+     * @param user contains reference to data element targeted for insertion..
+     */
+    public void addUser(UserAnt user)
+    {
+        this.users.add(user);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addUsers()} to retrieve list of Users as defined in input xml file.
+     *
+     * @return collection containing {@link UserAnt}s targeted for insertion.
+     */
+    public List<UserAnt> getUsers()
+    {
+        return this.users;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Adduseradminrole.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Adduseradminrole.java b/src/main/java/org/apache/directory/fortress/core/ant/Adduseradminrole.java
new file mode 100755
index 0000000..7f8ce8c
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Adduseradminrole.java
@@ -0,0 +1,92 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.UserAdminRole;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link org.apache.directory.fortress.core.rbac.UserAdminRole}s used to drive {@link org.apache.directory.fortress.core.DelAdminMgr#assignUser(org.apache.directory.fortress.core.rbac.UserAdminRole)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Adduseradminrole', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <adduseradminrole>
+ *           ...
+ *         </adduseradminrole>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Adduseradminrole
+{
+    final private List<UserAdminRole> userroles = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Adduseradminrole()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addUserRole', is used for derived xml tag 'userrole' in the load script.</p>
+     * <pre>
+     * {@code
+     * <adduseradminrole>
+     *     <userrole userId="demouser4"
+     *         name="DemoAdminUsers"
+     *         beginTime="0800"
+     *         endTime="1700"
+     *         beginDate="20110101"
+     *         endDate="none"
+     *         beginLockDate="none"
+     *         endLockDate="none"
+     *         dayMask="23456"
+     *         timeout="15"/>
+     * </adduseradminrole>
+     * }
+     * </pre>
+     *
+     * @param userRole contains reference to data element targeted for insertion..
+     */
+    public void addUserRole(UserAdminRole userRole)
+    {
+        this.userroles.add(userRole);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#addUserAdminRoles()} to retrieve list of UserAdminRoles as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.UserAdminRole}s targeted for insertion.
+     */
+    public List<UserAdminRole> getUserRoles()
+    {
+        return this.userroles;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Adduserorgunitinheritance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Adduserorgunitinheritance.java b/src/main/java/org/apache/directory/fortress/core/ant/Adduserorgunitinheritance.java
new file mode 100755
index 0000000..924ebb8
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Adduserorgunitinheritance.java
@@ -0,0 +1,85 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Relationship;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Relationship}s used to drive {@link org.apache.directory.fortress.core.DelAdminMgr#addAscendant(org.apache.directory.fortress.core.rbac.OrgUnit, org.apache.directory.fortress.core.rbac.OrgUnit)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Adduserorgunitinheritance', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <adduserorgunitinheritance>
+ *           ...
+ *         </adduserorgunitinheritance>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Adduserorgunitinheritance
+{
+    final private List<Relationship> relationships = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Adduserorgunitinheritance()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRelationship', is used for derived xml tag 'relationship' in the load script.</p>
+     * <pre>
+     * {@code
+     * <adduserorgunitinheritance>
+     *     <relationship child="ou2" parent="ou1"/>
+     *     <relationship child="ou3" parent="ou1"/>
+     *     <relationship child="ou4" parent="ou1"/>
+     * </adduserorgunitinheritance>
+     * }
+     * </pre>
+     *
+     * @param relationship contains reference to data element targeted for insertion..
+     */
+    public void addRelationship(Relationship relationship)
+    {
+        this.relationships.add(relationship);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#addAdduserorgunitinheritance(Adduserorgunitinheritance)} to retrieve list of User Org Unit relationships as defined in input xml file.
+     *
+     * @return collection containing {@link Relationship}s targeted for insertion.
+     */
+    public List<Relationship> getRelationships()
+    {
+        return this.relationships;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Adduserrole.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Adduserrole.java b/src/main/java/org/apache/directory/fortress/core/ant/Adduserrole.java
new file mode 100755
index 0000000..c93e077
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Adduserrole.java
@@ -0,0 +1,89 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.UserRole;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.rbac.UserRole}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#assignUser(org.apache.directory.fortress.core.rbac.UserRole)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Adduserrole', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <adduserrole>
+ *           ...
+ *         </adduserrole>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Adduserrole
+{
+    final private List<UserRole> userroles = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Adduserrole()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addUserRole', is used for derived xml tag 'userrole' in the load script.</p>
+     * <pre>
+     * {@code
+     * <adduserrole>
+     *     <userrole userId="demoUser1" name="role1" beginTime="0800" endTime="0700" beginDate="20110101" endDate="none" beginLockDate="none" endLockDate="none" dayMask="23456" timeout="30"/>
+     *     <!-- Bad - role end time -->
+     *     <userrole userId="demoUser5" name="role1"  beginTime="0700" endTime="0800" beginDate="20100101" endDate="21000101" beginLockDate="none" endLockDate="none" dayMask="all" timeout="0"/>
+     *     <!-- Bad - role  begin date -->
+     *     <userrole userId="demoUser7" name="role1"  beginTime="0000" endTime="0000" beginDate="20110110" endDate="21000101" beginLockDate="none" endLockDate="none" dayMask="all" timeout="0"/>
+     *     <!-- Bad - role  end date -->
+     *     <userrole userId="demoUser9" name="role1"  beginTime="0000" endTime="0000" beginDate="20100101" endDate="20100608" beginLockDate="none" endLockDate="none" dayMask="all" timeout="0"/>
+     * </adduserrole>
+     * }
+     * </pre>
+     *
+     * @param userRole contains reference to data element targeted for insertion..
+     */
+    public void addUserRole(UserRole userRole)
+    {
+        this.userroles.add(userRole);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addUserRoles()} to retrieve list of UserRoles as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.UserRole}s targeted for insertion.
+     */
+    public List<UserRole> getUserRoles()
+    {
+        return this.userroles;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/AdminRoleAnt.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/AdminRoleAnt.java b/src/main/java/org/apache/directory/fortress/core/ant/AdminRoleAnt.java
new file mode 100755
index 0000000..ac2438d
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/AdminRoleAnt.java
@@ -0,0 +1,110 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+
+import org.apache.directory.fortress.core.rbac.AdminRole;
+
+import java.util.StringTokenizer;
+
+/**
+ * Entity is used by custom Apache Ant task for special handling of collections.  This is necessary because the
+ * Ant parser cannot deal with complex data attribute types.
+ *
+ * @author Shawn McKinney
+ */
+public class AdminRoleAnt extends AdminRole
+{
+    private String osPs;
+    private String osUs;
+
+    /**
+     * Default constructor required for all Ant entities.
+     *
+     * @return String containing OSPs.
+     */
+    public String getOSPs()
+    {
+        return osPs;
+    }
+
+    /**
+     * Set the list of Perm OUs as a comma delimited string.  This method will convert from that format to
+     * the AdminRole native format which is collection of Strings.
+     *
+     * @param osPs
+     */
+    public void setOSPs(String osPs)
+    {
+        this.osPs = osPs;
+        if (osPs != null)
+        {
+            // allow the setter to process comma delimited strings:
+            StringTokenizer tkn = new StringTokenizer(osPs, ",");
+            if (tkn.countTokens() > 0)
+            {
+                while (tkn.hasMoreTokens())
+                {
+                    String osP = tkn.nextToken();
+                    setOsP(osP);                                                            /**
+                 * Set the list of Perm OUs as a comma delimited string.  This method will convert from that format to
+                 * the AdminRole native format which is collection of Strings.
+                 * @param osPs
+                 */
+
+                }
+            }
+        }
+    }
+
+    /**
+     * Return the comma delimited OU string.
+     *
+     * @return String containing OSUs.
+     */
+    public String getOSUs()
+    {
+        return osUs;
+    }
+
+    /**
+     * Load an OU into the collection of OUs stored by collection.
+     *
+     * @param osUs contains OU name.
+     */
+    public void setOSUs(String osUs)
+    {
+        this.osUs = osUs;
+        if (osUs != null)
+        {
+            // allow the setter to process comma delimited strings:
+            StringTokenizer tkn = new StringTokenizer(osUs, ",");
+            if (tkn.countTokens() > 0)
+            {
+                while (tkn.hasMoreTokens())
+                {
+                    String osU = tkn.nextToken();
+                    setOsU(osU);
+                }
+            }
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/ConfigAnt.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/ConfigAnt.java b/src/main/java/org/apache/directory/fortress/core/ant/ConfigAnt.java
new file mode 100755
index 0000000..f143875
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/ConfigAnt.java
@@ -0,0 +1,61 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+
+/**
+ * This entity contains the list of name/value pairs targeted for updating on server.
+ *
+ * @author Shawn McKinney
+ */
+public class ConfigAnt
+{
+    private String props;
+
+    /**
+     * Default constructor required for all Ant entities.
+     *
+     */
+    public ConfigAnt()
+    {
+    }
+
+
+    /**
+     * Get the properties as a String.
+     *
+     * @return String containing property name/values.
+     */
+    public String getProps()
+    {
+        return props;
+    }
+
+    /**
+     * Set the properties as a String.
+     *
+     * @param szProps
+     */
+    public void setProps(String szProps)
+    {
+        this.props = szProps;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Deladminrole.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Deladminrole.java b/src/main/java/org/apache/directory/fortress/core/ant/Deladminrole.java
new file mode 100755
index 0000000..b6c6bd7
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Deladminrole.java
@@ -0,0 +1,80 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * This class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.rbac.AdminRole}s used to drive {@link org.apache.directory.fortress.core.DelAdminMgr#deleteRole(org.apache.directory.fortress.core.rbac.AdminRole)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>The class name, 'Deladminrole', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <deladminrole>
+ *           ...
+ *         </deladminrole>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Deladminrole
+{
+	final private List<AdminRoleAnt> roles = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+	public Deladminrole() { }
+
+
+    /**
+     * <p>This method name, 'addRole', is used for the derived xml tag 'role' in the load script.</p>
+     * <pre>
+     * {@code
+     * <deladminrole>
+     *      <role name="DemoAdminUsers"
+     * </deladminrole>
+     * }
+     * </pre>
+     *
+     * @param role contains extension of {@link org.apache.directory.fortress.core.rbac.AdminRole}.
+     */
+	public void addRole(AdminRoleAnt role)
+	{
+		this.roles.add(role);
+	}
+
+    /**
+     * Used by {@link FortressAntTask#deleteAdminRoles()} to retrieve list of AdminRoles as defined in input xml file.
+     * @return collection containing {@link AdminRoleAnt}s targeted for removal.
+     */
+	public List<AdminRoleAnt> getRoles()
+	{
+		return this.roles;
+	}
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Deladminroleinheritance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Deladminroleinheritance.java b/src/main/java/org/apache/directory/fortress/core/ant/Deladminroleinheritance.java
new file mode 100755
index 0000000..e0affb7
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Deladminroleinheritance.java
@@ -0,0 +1,86 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Relationship;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Relationship}s used to drive {@link org.apache.directory.fortress.core.DelAdminMgr#deleteInheritance(org.apache.directory.fortress.core.rbac.AdminRole, org.apache.directory.fortress.core.rbac.AdminRole)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Deladminroleinheritance', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <deladminroleinheritance>
+ *           ...
+ *         </deladminroleinheritance>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ *
+ * @author Shawn McKinney
+ */
+public class Deladminroleinheritance
+{
+    final private List<Relationship> relationships = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Deladminroleinheritance()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRelationship', is used for derived xml tag 'relationship' in the load script.</p>
+     * <pre>
+     * {@code
+     * <deladminroleinheritance>
+     *     <relationship child="ar2" parent="ar1"/>
+     *     <relationship child="ar3" parent="ar1"/>
+     * </deladminroleinheritance>
+     * }
+     * </pre>
+     *
+     * @param relationship contains reference to data element targeted for removal.
+     */
+    public void addRelationship(Relationship relationship)
+    {
+        this.relationships.add(relationship);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#deleteAdminRoles()} to retrieve list of Relationships as defined in input xml file.
+     *
+     * @return collection containing {@link Relationship}s targeted for removal.
+     */
+    public List<Relationship> getRelationships()
+    {
+        return this.relationships;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delconfig.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delconfig.java b/src/main/java/org/apache/directory/fortress/core/ant/Delconfig.java
new file mode 100755
index 0000000..9f65199
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delconfig.java
@@ -0,0 +1,97 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.ant.ConfigAnt}s used to drive {@link org.apache.directory.fortress.core.cfg.ConfigMgr#delete(String, java.util.Properties)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delconfig', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delconfig>
+ *           ...
+ *         </delconfig>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delconfig
+{
+    final private List<ConfigAnt> config = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delconfig()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addConfig', is used for derived xml tag 'config' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delconfig>
+     *     <config props="config.realm:DEFAULT"/>
+     *     <config props="enable.audit:true"/>
+     *     <config props="authn.type:default"/>
+     *     <config props="password.policy:openldap"/>
+     *     <config props="clientside.sorting:true"/>
+     *     <config props="suffix:dc=jts\,dc=com"/>
+     *     <config props="user.root:ou=People\,dc=jts\,dc=com"/>
+     *     <config props="pwpolicy.root:ou=Policies\,dc=jts\,dc=com"/>
+     *     <config props="role.root:ou=Roles\,ou=RBAC\,dc=jts\,dc=com"/>
+     *     <config props="perm.root:ou=Permissions\,ou=RBAC\,dc=jts\,dc=com"/>
+     *     <config props="sdconstraint.root:ou=Constraints\,ou=RBAC\,dc=jts\,dc=com"/>
+     *     <config props="userou.root:ou=OS-U\,ou=ARBAC\,dc=jts\,dc=com"/>
+     *     <config props="permou.root:ou=OS-P\,ou=ARBAC\,dc=jts\,dc=com"/>
+     *     <config props="adminrole.root:ou=AdminRoles\,ou=ARBAC\,dc=jts\,dc=com"/>
+     *     <config props="adminperm.root:ou=AdminPerms\,ou=ARBAC\,dc=jts\,dc=com"/>
+     *     ...
+     * </delconfig>
+     * }
+     * </pre>
+     *
+     * @param config contains reference to data element targeted for removal..
+     */
+    public void addConfig(ConfigAnt config)
+    {
+        this.config.add(config);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#deleteConfig()} to retrieve list of properties as defined in input xml file.
+     *
+     * @return collection containing {@link ConfigAnt}s targeted for removal.
+     */
+    public List<ConfigAnt> getConfig()
+    {
+        return this.config;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delcontainer.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delcontainer.java b/src/main/java/org/apache/directory/fortress/core/ant/Delcontainer.java
new file mode 100755
index 0000000..52176a0
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delcontainer.java
@@ -0,0 +1,105 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.ldap.container.OrganizationalUnit;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to remove {@link org.apache.directory.fortress.core.ldap.container.OrganizationalUnit}s  used to drive {@link org.apache.directory.fortress.core.ldap.container.OrganizationalUnitP#delete(org.apache.directory.fortress.core.ldap.container.OrganizationalUnit)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delcontainer', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delcontainer>
+ *           ...
+ *         </delcontainer>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ * <p/>
+ * <font size="4" color="red">
+ * This class is destructive as it will remove all nodes below the container using recursive delete function.<BR>
+ * Extreme care should be taken during execution to ensure target dn is correct and permanent removal of data is intended.  There is no
+ * 'undo' for this operation.
+ * </font>
+ * <p/>
+ *
+ * @author Shawn McKinney
+ */
+public class Delcontainer
+{
+    final private List<OrganizationalUnit> containers = new ArrayList<>();
+
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delcontainer()
+    {
+    }
+
+
+    /**
+     * <p>This method name, 'addContainer', is used for derived xml tag 'container' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delcontainer>
+     *     <container name="Config"/>
+     *     <container name="People"/>
+     *     <container name="Policies"/>
+     *     <container name="RBAC"/>
+     *     <container name="Roles" parent="RBAC"/>
+     *     <container name="Permissions" parent="RBAC"/>
+     *     <container name="Constraints" parent="RBAC"/>
+     *     <container name="ARBAC"/>
+     *     <container name="OS-U" parent="ARBAC"/>
+     *     <container name="OS-P" parent="ARBAC"/>
+     *     <container name="AdminRoles" parent="ARBAC"/>
+     *     <container name="AdminPerms" parent="ARBAC"/>
+     * </delcontainer>
+     * }
+     * </pre>
+     *
+     * @param ou contains reference to data element targeted for deletion.
+     */
+    public void addContainer( OrganizationalUnit ou)
+    {
+        this.containers.add(ou);
+    }
+
+
+    /**
+     * Used by {@link FortressAntTask#deleteContainers()} to retrieve list of OrganizationalUnits as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.ldap.container.OrganizationalUnit}s targeted for removal.
+     */
+    public List<OrganizationalUnit> getContainers()
+    {
+        return this.containers;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delgroup.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delgroup.java b/src/main/java/org/apache/directory/fortress/core/ant/Delgroup.java
new file mode 100755
index 0000000..ddcf8fe
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delgroup.java
@@ -0,0 +1,83 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.ldap.group.Group;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link GroupAnt}s used to drive {@link org.apache.directory.fortress.core.ldap.group.GroupMgr#add(org.apache.directory.fortress.core.ldap.group.Group)} .
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delgroup', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delgroup>
+ *           ...
+ *         </delgroup>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delgroup
+{
+    final private List<Group> groups = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delgroup()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addGroup', is used for derived xml tag 'group' in the load script.</p>
+     * <pre>
+     * {@code
+     *  <delgroup>
+     *      <group name="test001"/>
+     *  </delgroup>
+     * }
+     * </pre>
+     *
+     * @param group contains reference to data element targeted for removal.
+     */
+    public void addGroup(Group group)
+    {
+        this.groups.add(group);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#deleteGroups()} to retrieve list of Groups as defined in input xml file.
+     *
+     * @return collection containing {@link GroupAnt}s targeted for removal.
+     */
+    public List<Group> getGroups()
+    {
+        return this.groups;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delgroupmember.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delgroupmember.java b/src/main/java/org/apache/directory/fortress/core/ant/Delgroupmember.java
new file mode 100755
index 0000000..3b7f9f7
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delgroupmember.java
@@ -0,0 +1,83 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.ldap.group.Group;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link Group}s.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delgroup', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delgroupmember>
+ *           ...
+ *         </delgroupmember>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delgroupmember
+{
+    final private List<Group> groups = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delgroupmember()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addGroup', is used for derived xml tag 'group' in the load script.</p>
+     * <pre>
+     * {@code
+     *  <delgroupmember>
+     *      <group name="test001" members="guser1,guser2,guser3" />
+     *  </delgroupmember>
+     * }
+     * </pre>
+     *
+     * @param group contains reference to data element targeted for removal.
+     */
+    public void addGroup(Group group)
+    {
+        this.groups.add(group);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addGroupMembers()} to retrieve list of Groups as defined in input xml file.
+     *
+     * @return collection containing {@link Group}s targeted for removal.
+     */
+    public List<Group> getGroups()
+    {
+        return this.groups;
+    }
+}

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delgroupproperty.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delgroupproperty.java b/src/main/java/org/apache/directory/fortress/core/ant/Delgroupproperty.java
new file mode 100755
index 0000000..2647724
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delgroupproperty.java
@@ -0,0 +1,83 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.ldap.group.Group;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Group}s.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delgroup', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delgroupmember>
+ *           ...
+ *         </delgroupmember>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delgroupproperty
+{
+    final private List<Group> groups = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delgroupproperty()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addGroup', is used for derived xml tag 'group' in the load script.</p>
+     * <pre>
+     * {@code
+     *  <delgroupmember>
+     *      <group name="test001"/>
+     *  </delgroupmember>
+     * }
+     * </pre>
+     *
+     * @param group contains reference to data element targeted for removal.
+     */
+    public void addGroup(Group group)
+    {
+        this.groups.add(group);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#deleteGroups()} to retrieve list of Groups as defined in input xml file.
+     *
+     * @return collection containing {@link Group}s targeted for removal.
+     */
+    public List<Group> getGroups()
+    {
+        return this.groups;
+    }
+}

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delorgunit.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delorgunit.java b/src/main/java/org/apache/directory/fortress/core/ant/Delorgunit.java
new file mode 100755
index 0000000..7af0216
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delorgunit.java
@@ -0,0 +1,89 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.fortress.core.rbac.OrgUnitAnt;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to delete {@link org.apache.directory.fortress.core.rbac.OrgUnit}s used to drive {@link org.apache.directory.fortress.core.DelAdminMgr#delete(org.apache.directory.fortress.core.rbac.OrgUnit)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delorgunit', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delorgunit>
+ *           ...
+ *         </delorgunit>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delorgunit
+{
+    final private List<OrgUnitAnt> ous = new ArrayList<>();
+
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delorgunit()
+    {
+    }
+
+
+    /**
+     * <p>This method name, 'addOrgUnit', is used for derived xml tag 'orgunit' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delorgunit>
+     *     <orgunit name="demousrs1" typeName="USER"/>
+     *     <orgunit name="demousrs2" typename="USER"/>
+     *     <orgunit name="demoapps1" typeName="PERM"/>
+     *     <orgunit name="demoapps2" typename="PERM"/>
+     * </delorgunit>
+     * }
+     * </pre>
+     *
+     * @param ou contains reference to data element targeted for deletion..
+     */
+    public void addOrgUnit(OrgUnitAnt ou)
+    {
+        this.ous.add(ou);
+    }
+
+
+    /**
+     * Used by {@link FortressAntTask#addOrgunits()} to retrieve list of OrgUnits as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.OrgUnit}s targeted for removal.
+     */
+    public List<OrgUnitAnt> getOrgUnits()
+    {
+        return this.ous;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/DelpermGrant.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/DelpermGrant.java b/src/main/java/org/apache/directory/fortress/core/ant/DelpermGrant.java
new file mode 100755
index 0000000..a68cd7d
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/DelpermGrant.java
@@ -0,0 +1,92 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.PermGrant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The class is used by {@link FortressAntTask} to revoke {@link PermGrant}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#revokePermission(org.apache.directory.fortress.core.rbac.Permission, org.apache.directory.fortress.core.rbac.Role)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'DelpermGrant', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delpermgrant>
+ *           ...
+ *         </delpermgrant>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class DelpermGrant
+{
+    private List<PermGrant> permGrants = new ArrayList<>();
+
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public DelpermGrant()
+    {
+    }
+
+
+    /**
+     * <p>This method name, 'addPermGrant', is used for derived xml tag 'permgrant' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delpermgrant>
+     *     <permgrant objName="/jsp/cal/cal1.jsp" opName="main" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="8am" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="10am" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="12pm" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="2pm" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="4pm" roleNm="role1"/>
+     *     <permgrant objName="/jsp/cal/cal2.jsp" opName="6pm" roleNm="role1"/>
+     * </delpermgrant>
+     * }
+     * </pre>
+     *
+     * @param permGrant contains reference to data element targeted for revocation.
+     */
+    public void addPermGrant(PermGrant permGrant)
+    {
+        this.permGrants.add(permGrant);
+    }
+
+
+    /**
+     * Used by {@link FortressAntTask#addPermGrants()} to retrieve list of PermGrant as defined in input xml file.
+     *
+     * @return collection containing {@link PermGrant}s targeted for revocation.
+     */
+    public List<PermGrant> getPermGrants()
+    {
+        return this.permGrants;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/DelpermObj.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/DelpermObj.java b/src/main/java/org/apache/directory/fortress/core/ant/DelpermObj.java
new file mode 100755
index 0000000..851ecc4
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/DelpermObj.java
@@ -0,0 +1,85 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.directory.fortress.core.rbac.PermObj;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link PermObj}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deletePermObj(org.apache.directory.fortress.core.rbac.PermObj)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'DelpermObj', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delpermobj>
+ *           ...
+ *         </delpermobj>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class DelpermObj
+{
+    final private List<PermObj> permObjs = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public DelpermObj()
+    {
+    }
+
+    /**
+     * <p>This method name, 'delPermObj', is used for derived xml tag 'permobj' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delpermobj>
+     *     <permobj objName="/jsp/cal/cal1.jsp"/>
+     *     <permobj objName="/jsp/cal/cal2.jsp"/>
+     * </delpermobj>
+     * }
+     * </pre>
+     *
+     * @param permObj contains reference to data element targeted for insertion..
+     */
+    public void addPermObj(PermObj permObj)
+    {
+        this.permObjs.add(permObj);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#addPermObjs()} to retrieve list of PermObjs as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.PermObj}s targeted for deletion.
+     */
+    public List<PermObj> getObjs()
+    {
+        return this.permObjs;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/DelpermOp.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/DelpermOp.java b/src/main/java/org/apache/directory/fortress/core/ant/DelpermOp.java
new file mode 100755
index 0000000..119bc2e
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/DelpermOp.java
@@ -0,0 +1,96 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.ant.PermAnt}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deletePermission(org.apache.directory.fortress.core.rbac.Permission)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'DelpermOp', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delpermop>
+ *           ...
+ *         </delpermop>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class DelpermOp
+{
+    final private List<PermAnt> permissions = new ArrayList<>();
+
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public DelpermOp()
+    {
+    }
+
+
+    /**
+     * <p>This method name, 'addPermOp', is used for derived xml tag 'permop' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delpermop>
+     *     <permop opName="main" objName="/jsp/cal/cal1.jsp"/>
+     *     <permop opName="8am" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="9am" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="10am" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="11am" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="12pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="1pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="2pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="3pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="4pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="5pm" objName="/jsp/cal/cal2.jsp"/>
+     *     <permop opName="6pm" objName="/jsp/cal/cal2.jsp"/>
+     * </delpermop>
+     * }
+     * </pre>
+     *
+     * @param permission contains reference to data element targeted for removal..
+     */
+    public void addPermOp(PermAnt permission)
+    {
+        this.permissions.add(permission);
+    }
+
+
+    /**
+     * Used by {@link FortressAntTask#addPermOps()} to retrieve list of Permissions as defined in input xml file.
+     *
+     * @return collection containing {@link PermAnt}s targeted for removal.
+     */
+    public List<PermAnt> getPermOps()
+    {
+        return this.permissions;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delpermorgunitinheritance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delpermorgunitinheritance.java b/src/main/java/org/apache/directory/fortress/core/ant/Delpermorgunitinheritance.java
new file mode 100755
index 0000000..51ffc85
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delpermorgunitinheritance.java
@@ -0,0 +1,87 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Relationship;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Relationship}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deleteInheritance(org.apache.directory.fortress.core.rbac.Role, org.apache.directory.fortress.core.rbac.Role)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delpermorgunitinheritance', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delpermorgunitinheritance>
+ *           ...
+ *         </delpermorgunitinheritance>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ *
+ * @author Shawn McKinney
+ */
+public class Delpermorgunitinheritance
+{
+    final private List<Relationship> relationships = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delpermorgunitinheritance()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRelationship', is used for derived xml tag 'relationship' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delpermorgunitinheritance>
+     *     <relationship child="ou2" parent="ou1"/>
+     *     <relationship child="ou3" parent="ou1"/>
+     *     <relationship child="ou4" parent="ou1"/>
+     * </delpermorgunitinheritance>
+     * }
+     * </pre>
+     *
+     * @param relationship contains reference to data element targeted for removal.
+     */
+    public void addRelationship(Relationship relationship)
+    {
+        this.relationships.add(relationship);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#deleteRoles()} to retrieve list of Relationships as defined in input xml file.
+     *
+     * @return collection containing {@link Relationship}s targeted for removal.
+     */
+    public List<Relationship> getRelationships()
+    {
+        return this.relationships;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delpwpolicy.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delpwpolicy.java b/src/main/java/org/apache/directory/fortress/core/ant/Delpwpolicy.java
new file mode 100755
index 0000000..ebc8dd7
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delpwpolicy.java
@@ -0,0 +1,84 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.PwPolicy;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.rbac.PwPolicy}s used to drive {@link org.apache.directory.fortress.core.PwPolicyMgr#delete(org.apache.directory.fortress.core.rbac.PwPolicy)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delpwpolicy', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delpwpolicy>
+ *           ...
+ *         </delpwpolicy>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delpwpolicy
+{
+    final private List<PwPolicy> policies = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delpwpolicy()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addPolicy', is used for derived xml tag 'policy' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delpwpolicy>
+     *     <policy name="Test1"/>
+     * </delpwpolicy>
+     * }
+     * </pre>
+     *
+     * @param policy contains reference to data element targeted for removal.
+     */
+    public void addPolicy(PwPolicy policy)
+    {
+        this.policies.add(policy);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#deletePolicies()} to retrieve list of PwPolicy as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.PwPolicy}s targeted for removal.
+     */
+    public List<PwPolicy> getPolicies()
+    {
+        return this.policies;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delrole.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delrole.java b/src/main/java/org/apache/directory/fortress/core/ant/Delrole.java
new file mode 100755
index 0000000..c2721b7
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delrole.java
@@ -0,0 +1,85 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Role;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to load {@link org.apache.directory.fortress.core.rbac.Role}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deleteRole(org.apache.directory.fortress.core.rbac.Role)}}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delrole', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delrole>
+ *           ...
+ *         </delrole>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delrole
+{
+    final private List<Role> roles = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delrole()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRole', is used for derived xml tag 'role' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delrole>
+     *     <role name="role1"/>
+     *     <role name="role2"/>
+     * </delrole>
+     * }
+     * </pre>
+     *
+     * @param role contains reference to data element targeted for removal.
+     */
+    public void addRole(Role role)
+    {
+        this.roles.add(role);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#deleteRoles()} to retrieve list of Roles as defined in input xml file.
+     *
+     * @return collection containing {@link org.apache.directory.fortress.core.rbac.Role}s targeted for removal.
+     */
+    public List<Role> getRoles()
+    {
+        return this.roles;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delroleinheritance.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delroleinheritance.java b/src/main/java/org/apache/directory/fortress/core/ant/Delroleinheritance.java
new file mode 100755
index 0000000..39582ed
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delroleinheritance.java
@@ -0,0 +1,86 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import org.apache.directory.fortress.core.rbac.Relationship;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link org.apache.directory.fortress.core.ant.FortressAntTask} to load {@link Relationship}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deleteInheritance(org.apache.directory.fortress.core.rbac.Role, org.apache.directory.fortress.core.rbac.Role)}.
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delroleinheritance', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delroleinheritance>
+ *           ...
+ *         </delroleinheritance>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ *
+ * @author Shawn McKinney
+ */
+public class Delroleinheritance
+{
+    final private List<Relationship> relationships = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delroleinheritance()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addRelationship', is used for derived xml tag 'relationship' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delroleinheritance>
+     *     <relationship child="r2" parent="r1"/>
+     *     <relationship child="r3" parent="r1"/>
+     * </delroleinheritance>
+     * }
+     * </pre>
+     *
+     * @param relationship contains reference to data element targeted for removal.
+     */
+    public void addRelationship(Relationship relationship)
+    {
+        this.relationships.add(relationship);
+    }
+
+    /**
+     * Used by {@link org.apache.directory.fortress.core.ant.FortressAntTask#deleteRoleInheritances()} to retrieve list of Role relationships as defined in input xml file.
+     *
+     * @return collection containing {@link Relationship}s targeted for removal.
+     */
+    public List<Relationship> getRelationships()
+    {
+        return this.relationships;
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/687ee1ad/src/main/java/org/apache/directory/fortress/core/ant/Delsdset.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/core/ant/Delsdset.java b/src/main/java/org/apache/directory/fortress/core/ant/Delsdset.java
new file mode 100755
index 0000000..75f3610
--- /dev/null
+++ b/src/main/java/org/apache/directory/fortress/core/ant/Delsdset.java
@@ -0,0 +1,84 @@
+/*
+ *   Licensed to the Apache Software Foundation (ASF) under one
+ *   or more contributor license agreements.  See the NOTICE file
+ *   distributed with this work for additional information
+ *   regarding copyright ownership.  The ASF licenses this file
+ *   to you under the Apache License, Version 2.0 (the
+ *   "License"); you may not use this file except in compliance
+ *   with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing,
+ *   software distributed under the License is distributed on an
+ *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *   KIND, either express or implied.  See the License for the
+ *   specific language governing permissions and limitations
+ *   under the License.
+ *
+ */
+package org.apache.directory.fortress.core.ant;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * The class is used by {@link FortressAntTask} to create new {@link SDSetAnt}s used to drive {@link org.apache.directory.fortress.core.AdminMgr#deleteSsdSet(org.apache.directory.fortress.core.rbac.SDSet)} or {@link org.apache.directory.fortress.core.AdminMgr#deleteDsdSet(org.apache.directory.fortress.core.rbac.SDSet)}.
+ *
+ * It is not intended to be callable by programs outside of the Ant load utility.  The class name itself maps to the xml tag used by load utility.
+ * <p>This class name, 'Delsdset', is used for the xml tag in the load script.</p>
+ * <pre>
+ * {@code
+ * <target name="all">
+ *     <FortressAdmin>
+ *         <delsdset>
+ *           ...
+ *         </delsdset>
+ *     </FortressAdmin>
+ * </target>
+ * }
+ * </pre>
+ *
+ * @author Shawn McKinney
+ */
+public class Delsdset
+{
+    final private List<SDSetAnt> sds = new ArrayList<>();
+
+    /**
+     * All Ant data entities must have a default constructor.
+     */
+    public Delsdset()
+    {
+    }
+
+    /**
+     * <p>This method name, 'addSdset', is used for derived xml tag 'sdset' in the load script.</p>
+     * <pre>
+     * {@code
+     * <delsdset>
+     *     <sdset name="DemoSSD1" settype="STATIC" />
+     *     <sdset name="DemoDSD1" settype="DYNAMIC" />
+     * </delsdset>
+     * }
+     * </pre>
+     *
+     * @param sd contains reference to data element targeted for removal.
+     */
+    public void addSdset(SDSetAnt sd)
+    {
+        this.sds.add(sd);
+    }
+
+    /**
+     * Used by {@link FortressAntTask#deleteSdsets()} to retrieve list of SDSetAnt as defined in input xml file.
+     *
+     * @return collection containing {@link SDSetAnt}s targeted for removal.
+     */
+    public List<SDSetAnt> getSdset()
+    {
+        return this.sds;
+    }
+}
+