diff --git a/config/alfresco/virtualization-context.xml b/config/alfresco/virtualization-context.xml
index 24f8b50389..5de3200ebf 100644
--- a/config/alfresco/virtualization-context.xml
+++ b/config/alfresco/virtualization-context.xml
@@ -199,11 +199,6 @@
-
-
-
-
-
@@ -260,7 +255,6 @@
-
@@ -291,11 +285,6 @@
-
-
-
-
-
diff --git a/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java b/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
index a8ef5e18f4..7dc7bf4de3 100644
--- a/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
+++ b/source/java/org/alfresco/repo/domain/permissions/ADMAccessControlListDAO.java
@@ -26,8 +26,6 @@ import java.util.Map;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.domain.node.NodeDAO;
import org.alfresco.repo.domain.node.NodeIdAndAclId;
-import org.alfresco.repo.domain.permissions.traitextender.AccessControlListDAOExtension;
-import org.alfresco.repo.domain.permissions.traitextender.AccessControlListDAOTrait;
import org.alfresco.repo.policy.BehaviourFilter;
import org.alfresco.repo.security.permissions.ACLType;
import org.alfresco.repo.security.permissions.AccessControlList;
@@ -38,11 +36,6 @@ import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
-import org.alfresco.traitextender.AJExtender;
-import org.alfresco.traitextender.Extend;
-import org.alfresco.traitextender.ExtendedTrait;
-import org.alfresco.traitextender.Extensible;
-import org.alfresco.traitextender.Trait;
import org.alfresco.util.Pair;
import org.springframework.dao.ConcurrencyFailureException;
@@ -52,7 +45,7 @@ import org.springframework.dao.ConcurrencyFailureException;
*
* @author andyh
*/
-public class ADMAccessControlListDAO implements AccessControlListDAO, Extensible
+public class ADMAccessControlListDAO implements AccessControlListDAO
{
/**
* The DAO for Nodes.
@@ -63,14 +56,7 @@ public class ADMAccessControlListDAO implements AccessControlListDAO, Extensible
private BehaviourFilter behaviourFilter;
private boolean preserveAuditableData = true;
-
- private final ExtendedTrait accessControlListDAOTrait;
-
- public ADMAccessControlListDAO()
- {
- accessControlListDAOTrait=new ExtendedTrait(createAccessControlListDAOTrait());
- }
-
+
public void setNodeDAO(NodeDAO nodeDAO)
{
this.nodeDAO = nodeDAO;
@@ -111,8 +97,6 @@ public class ADMAccessControlListDAO implements AccessControlListDAO, Extensible
return nodePair.getFirst();
}
- @Override
- @Extend(traitAPI = AccessControlListDAOTrait.class, extensionAPI = AccessControlListDAOExtension.class)
public Acl getAccessControlList(NodeRef nodeRef)
{
Long nodeId = getNodeIdNotNull(nodeRef);
@@ -491,104 +475,76 @@ public class ADMAccessControlListDAO implements AccessControlListDAO, Extensible
}
}
}
-
- /**
- *
- * Counter for each type of ACL change
- * @author andyh
- *
- */
- public static class CounterSet extends HashMap
- {
- /**
- *
- */
- private static final long serialVersionUID = -3682278258679211481L;
-
- CounterSet()
- {
- super();
- this.put(ACLType.DEFINING, new Counter());
- this.put(ACLType.FIXED, new Counter());
- this.put(ACLType.GLOBAL, new Counter());
- this.put(ACLType.LAYERED, new Counter());
- this.put(ACLType.OLD, new Counter());
- this.put(ACLType.SHARED, new Counter());
- }
-
- void add(ACLType type, Counter c)
- {
- Counter counter = get(type);
- counter.add(c.getCounter());
- }
-
- void increment(ACLType type)
- {
- Counter counter = get(type);
- counter.increment();
- }
-
- void add(CounterSet other)
- {
- add(ACLType.DEFINING, other.get(ACLType.DEFINING));
- add(ACLType.FIXED, other.get(ACLType.FIXED));
- add(ACLType.GLOBAL, other.get(ACLType.GLOBAL));
- add(ACLType.LAYERED, other.get(ACLType.LAYERED));
- add(ACLType.OLD, other.get(ACLType.OLD));
- add(ACLType.SHARED, other.get(ACLType.SHARED));
- }
- }
-
- /**
- * Simple counter
- * @author andyh
- *
- */
- public static class Counter
- {
- int counter;
-
- void increment()
- {
- counter++;
- }
-
- int getCounter()
- {
- return counter;
- }
-
- void add(int i)
- {
- counter += i;
- }
- }
-
- @Override
- public ExtendedTrait getTrait(Class extends M> traitAPI)
- {
- return (ExtendedTrait) accessControlListDAOTrait;
- }
-
- public AccessControlListDAOTrait createAccessControlListDAOTrait()
- {
- return new AccessControlListDAOTrait()
- {
-
- @Override
- public Acl getAccessControlList(final NodeRef nodeRef)
- {
- return AJExtender.run(new AJExtender.ExtensionBypass()
- {
- @Override
- public Acl run()
- {
- return ADMAccessControlListDAO.this.getAccessControlList(nodeRef);
- };
- });
- };
-
- };
-
- }
-}
+
+ /**
+ *
+ * Counter for each type of ACL change
+ * @author andyh
+ *
+ */
+ public static class CounterSet extends HashMap
+ {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -3682278258679211481L;
+
+ CounterSet()
+ {
+ super();
+ this.put(ACLType.DEFINING, new Counter());
+ this.put(ACLType.FIXED, new Counter());
+ this.put(ACLType.GLOBAL, new Counter());
+ this.put(ACLType.LAYERED, new Counter());
+ this.put(ACLType.OLD, new Counter());
+ this.put(ACLType.SHARED, new Counter());
+ }
+
+ void add(ACLType type, Counter c)
+ {
+ Counter counter = get(type);
+ counter.add(c.getCounter());
+ }
+
+ void increment(ACLType type)
+ {
+ Counter counter = get(type);
+ counter.increment();
+ }
+
+ void add(CounterSet other)
+ {
+ add(ACLType.DEFINING, other.get(ACLType.DEFINING));
+ add(ACLType.FIXED, other.get(ACLType.FIXED));
+ add(ACLType.GLOBAL, other.get(ACLType.GLOBAL));
+ add(ACLType.LAYERED, other.get(ACLType.LAYERED));
+ add(ACLType.OLD, other.get(ACLType.OLD));
+ add(ACLType.SHARED, other.get(ACLType.SHARED));
+ }
+ }
+
+ /**
+ * Simple counter
+ * @author andyh
+ *
+ */
+ public static class Counter
+ {
+ int counter;
+
+ void increment()
+ {
+ counter++;
+ }
+
+ int getCounter()
+ {
+ return counter;
+ }
+
+ void add(int i)
+ {
+ counter += i;
+ }
+ }
+}
diff --git a/source/java/org/alfresco/repo/virtual/bundle/VirtualAccessControlListDAOExtension.java b/source/java/org/alfresco/repo/virtual/bundle/VirtualAccessControlListDAOExtension.java
deleted file mode 100644
index 9c888f77e3..0000000000
--- a/source/java/org/alfresco/repo/virtual/bundle/VirtualAccessControlListDAOExtension.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2005-2015 Alfresco Software Limited.
- *
- * This file is part of Alfresco
- *
- * Alfresco is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Alfresco is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with Alfresco. If not, see http://www.gnu.org/licenses/.
- */
-
-package org.alfresco.repo.virtual.bundle;
-
-import org.alfresco.repo.domain.permissions.Acl;
-import org.alfresco.repo.domain.permissions.traitextender.AccessControlListDAOExtension;
-import org.alfresco.repo.domain.permissions.traitextender.AccessControlListDAOTrait;
-import org.alfresco.repo.virtual.ActualEnvironment;
-import org.alfresco.repo.virtual.ref.GetActualNodeRefMethod;
-import org.alfresco.repo.virtual.ref.Reference;
-import org.alfresco.service.cmr.repository.NodeRef;
-import org.alfresco.traitextender.SpringBeanExtension;
-
-public class VirtualAccessControlListDAOExtension
- extends SpringBeanExtension
- implements AccessControlListDAOExtension
-{
- private ActualEnvironment environment;
-
- public VirtualAccessControlListDAOExtension()
- {
- super(AccessControlListDAOTrait.class);
- }
-
- public void setEnvironment(ActualEnvironment environment)
- {
- this.environment = environment;
- }
-
- @Override
- public Acl getAccessControlList(NodeRef nodeRef)
- {
-
- if (Reference.isReference(nodeRef))
- {
- Reference vRef = Reference.fromNodeRef(nodeRef);
- NodeRef actual = vRef.execute(new GetActualNodeRefMethod(environment));
- return getTrait().getAccessControlList(actual);
- }
- return getTrait().getAccessControlList(nodeRef);
-
- }
-}