diff --git a/config/alfresco/core-services-context.xml b/config/alfresco/core-services-context.xml
index 510f41e6b0..c4e2a44923 100644
--- a/config/alfresco/core-services-context.xml
+++ b/config/alfresco/core-services-context.xml
@@ -777,9 +777,6 @@
-
-
-
diff --git a/config/alfresco/node-services-context.xml b/config/alfresco/node-services-context.xml
index f7698816a4..8e33baf8f0 100644
--- a/config/alfresco/node-services-context.xml
+++ b/config/alfresco/node-services-context.xml
@@ -100,6 +100,9 @@
+
+
+
diff --git a/config/alfresco/usage-services-context.xml b/config/alfresco/usage-services-context.xml
index a233f235f3..a0a3973ebb 100644
--- a/config/alfresco/usage-services-context.xml
+++ b/config/alfresco/usage-services-context.xml
@@ -6,8 +6,7 @@
-
-
+
diff --git a/source/java/org/alfresco/repo/copy/CopyServiceImpl.java b/source/java/org/alfresco/repo/copy/CopyServiceImpl.java
index 8a6930db53..00e4675fd3 100644
--- a/source/java/org/alfresco/repo/copy/CopyServiceImpl.java
+++ b/source/java/org/alfresco/repo/copy/CopyServiceImpl.java
@@ -40,7 +40,6 @@ import org.alfresco.repo.policy.ClassPolicyDelegate;
import org.alfresco.repo.policy.JavaBehaviour;
import org.alfresco.repo.policy.PolicyComponent;
import org.alfresco.repo.policy.PolicyScope;
-import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.cmr.dictionary.AspectDefinition;
import org.alfresco.service.cmr.dictionary.AssociationDefinition;
import org.alfresco.service.cmr.dictionary.ChildAssociationDefinition;
@@ -101,9 +100,6 @@ public class CopyServiceImpl implements CopyService
/** Authentication service */
private AuthenticationService authenticationService;
-
- /** Tenant service */
- private TenantService tenantService;
/** Policy delegates */
private ClassPolicyDelegate onCopyNodeDelegate;
@@ -188,16 +184,6 @@ public class CopyServiceImpl implements CopyService
{
this.authenticationService = authenticationService;
}
-
- /**
- * Sets the tenant service
- *
- * @param tenantService the tenant service
- */
- public void setTenantService(TenantService tenantService)
- {
- this.tenantService = tenantService;
- }
/**
* Initialise method
@@ -239,8 +225,7 @@ public class CopyServiceImpl implements CopyService
ParameterCheck.mandatory("Destination Parent", destinationParentRef);
ParameterCheck.mandatory("Destination Association Name", destinationQName);
- // AR-2023, need to push down
- if (tenantService.getName(sourceNodeRef.getStoreRef()).equals(tenantService.getName(destinationParentRef.getStoreRef())) == false)
+ if (sourceNodeRef.getStoreRef().equals(destinationParentRef.getStoreRef()) == false)
{
// TODO We need to create a new node in the other store with the same id as the source
diff --git a/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java b/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java
index b1af1ed44f..95259bf91d 100644
--- a/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java
+++ b/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java
@@ -132,7 +132,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
ParameterCheck.mandatory("nodeRef", nodeRef);
- Node unchecked = nodeDaoService.getNode(tenantService.getName(nodeRef));
+ Node unchecked = nodeDaoService.getNode(nodeRef);
if (unchecked == null)
{
throw new InvalidNodeRefException("Node does not exist: " + nodeRef, nodeRef);
@@ -150,7 +150,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
ParameterCheck.mandatory("nodeRef", nodeRef);
- NodeStatus nodeStatus = nodeDaoService.getNodeStatus(tenantService.getName(nodeRef), false);
+ NodeStatus nodeStatus = nodeDaoService.getNodeStatus(nodeRef, false);
if (nodeStatus == null || nodeStatus.getNode() == null)
{
throw new InvalidNodeRefException("Node does not exist: " + nodeRef, nodeRef);
@@ -160,7 +160,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
public boolean exists(StoreRef storeRef)
{
- storeRef = tenantService.getName(storeRef);
Store store = nodeDaoService.getStore(storeRef.getProtocol(), storeRef.getIdentifier());
boolean exists = (store != null);
// done
@@ -171,7 +170,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
ParameterCheck.mandatory("nodeRef", nodeRef);
- nodeRef = tenantService.getName(nodeRef);
Node node = nodeDaoService.getNode(nodeRef);
boolean exists = (node != null);
// done
@@ -182,7 +180,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
ParameterCheck.mandatory("nodeRef", nodeRef);
- nodeRef = tenantService.getName(nodeRef);
NodeStatus nodeStatus = nodeDaoService.getNodeStatus(nodeRef, false);
if (nodeStatus == null) // node never existed
{
@@ -234,8 +231,8 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
*/
public StoreRef createStore(String protocol, String identifier)
{
- StoreRef storeRef = tenantService.getName(new StoreRef(protocol, identifier));
- identifier = storeRef.getIdentifier();
+ StoreRef storeRef = new StoreRef(protocol, identifier);
+
// check that the store does not already exist
Store store = nodeDaoService.getStore(protocol, identifier);
if (store != null)
@@ -250,20 +247,22 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
store = nodeDaoService.createStore(protocol, identifier);
// get the root node
Node rootNode = store.getRootNode();
+ NodeRef rootNodeRef = tenantService.getBaseName(rootNode.getNodeRef());
+
// assign the root aspect - this is expected of all roots, even store roots
- addAspect(rootNode.getNodeRef(),
+ addAspect(rootNodeRef,
ContentModel.ASPECT_ROOT,
Collections.emptyMap());
// invoke policies
- invokeOnCreateStore(rootNode.getNodeRef());
+ invokeOnCreateStore(rootNodeRef);
// done
if (!store.getStoreRef().equals(storeRef))
{
throw new RuntimeException("Incorrect store reference");
}
- storeRef = tenantService.getBaseName(storeRef);
+
return storeRef;
}
@@ -272,8 +271,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
*/
public void deleteStore(StoreRef storeRef)
{
- storeRef = tenantService.getName(storeRef);
-
String protocol = storeRef.getProtocol();
String identifier = storeRef.getIdentifier();
@@ -296,7 +293,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
public NodeRef getRootNode(StoreRef storeRef) throws InvalidStoreRefException
{
- storeRef = tenantService.getName(storeRef);
Store store = nodeDaoService.getStore(storeRef.getProtocol(), storeRef.getIdentifier());
if (store == null)
{
@@ -308,10 +304,8 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
throw new InvalidStoreRefException("Store does not have a root node: " + storeRef, storeRef);
}
- NodeRef nodeRef = node.getNodeRef();
- nodeRef = tenantService.getBaseName(nodeRef);
// done
- return nodeRef;
+ return tenantService.getBaseName(node.getNodeRef());
}
/**
@@ -341,7 +335,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
Assert.notNull(assocQName);
// Get the parent node
- parentRef = tenantService.getName(parentRef);
Node parentNode = getNodeNotNull(parentRef);
// null property map is allowed
@@ -359,8 +352,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
invokeBeforeCreateNode(parentRef, assocTypeQName, assocQName, nodeTypeQName);
// get the store that the parent belongs to
- StoreRef storeRef = parentRef.getStoreRef();
- Store store = nodeDaoService.getStore(storeRef.getProtocol(), storeRef.getIdentifier());
+ Store store = nodeDaoService.getStore(parentRef.getStoreRef().getProtocol(), parentRef.getStoreRef().getIdentifier());
if (store == null)
{
throw new RuntimeException("No store found for parent node: " + parentRef);
@@ -378,7 +370,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
// create the node instance
Node childNode = nodeDaoService.newNode(store, newId, nodeTypeQName);
- NodeRef childNodeRef = childNode.getNodeRef();
+ NodeRef childNodeRef = tenantService.getBaseName(childNode.getNodeRef());
// We now have enough to declare the child association creation
invokeBeforeCreateChildAssociation(parentRef, childNodeRef, assocTypeQName, assocQName, true);
@@ -407,7 +399,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
// Ensure child uniqueness
setChildUniqueName(childNode); // ensure uniqueness
- ChildAssociationRef childAssocRef = childAssoc.getChildAssocRef();
+ ChildAssociationRef childAssocRef = tenantService.getBaseName(childAssoc.getChildAssocRef());
// Invoke policy behaviour
invokeOnCreateNode(childAssocRef);
@@ -468,10 +460,9 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
Node newParentNode = getNodeNotNull(newParentRef);
// get the primary parent assoc
ChildAssoc oldAssoc = nodeDaoService.getPrimaryParentAssoc(nodeToMove);
- ChildAssociationRef oldAssocRef = oldAssoc.getChildAssocRef();
+ ChildAssociationRef oldAssocRef = tenantService.getBaseName(oldAssoc.getChildAssocRef());
- // AR-2023, need to push down
- boolean movingStore = !tenantService.getName(nodeToMoveRef.getStoreRef()).equals(tenantService.getName(newParentRef.getStoreRef()));
+ boolean movingStore = !nodeToMoveRef.getStoreRef().equals(newParentRef.getStoreRef());
// data needed for policy invocation
QName nodeToMoveTypeQName = nodeToMove.getTypeQName();
@@ -501,7 +492,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
assocTypeQName,
assocQName);
setChildUniqueName(nodeToMove); // ensure uniqueness
- ChildAssociationRef newAssocRef = newAssoc.getChildAssocRef();
+ ChildAssociationRef newAssocRef = tenantService.getBaseName(newAssoc.getChildAssocRef());
// If the node is moving stores, then drag the node hierarchy with it
if (movingStore)
@@ -605,7 +596,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
Map aspectProperties)
throws InvalidNodeRefException, InvalidAspectException
{
- nodeRef = tenantService.getName(nodeRef);
// check that the aspect is legal
AspectDefinition aspectDef = dictionaryService.getAspect(aspectTypeQName);
if (aspectDef == null)
@@ -749,7 +739,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
public void deleteNode(NodeRef nodeRef)
{
- nodeRef = tenantService.getName(nodeRef);
// First get the node to ensure that it exists
Node node = getNodeNotNull(nodeRef);
@@ -759,7 +748,8 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
invokeBeforeDeleteNode(nodeRef);
// get the primary parent-child relationship before it is gone
- ChildAssociationRef childAssocRef = tenantService.getName(getPrimaryParent(nodeRef)); //note: tenant-specific for re-indexing
+ ChildAssociationRef childAssocRef = getPrimaryParent(nodeRef);
+
// get type and aspect QNames as they will be unavailable after the delete
QName nodeTypeQName = node.getTypeQName();
Set nodeAspectQNames = node.getAspects();
@@ -778,8 +768,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
StoreRef storeRef = nodeRef.getStoreRef();
// remove tenant domain - to retrieve archive store from map
- storeRef = tenantService.getBaseName(storeRef);
-
archiveStoreRef = storeArchiveMap.getArchiveMap().get(storeRef);
// get the type and check if we need archiving
TypeDefinition typeDef = dictionaryService.getType(node.getTypeQName());
@@ -977,7 +965,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
public Map getProperties(NodeRef nodeRef) throws InvalidNodeRefException
{
- nodeRef = tenantService.getName(nodeRef);
Node node = getNodeNotNull(nodeRef);
return getPropertiesImpl(node);
}
@@ -1139,7 +1126,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
{
Assert.notNull(qname);
- nodeRef = tenantService.getName(nodeRef);
// get the node
Node node = getNodeNotNull(nodeRef);
@@ -1193,7 +1179,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
throw new UnsupportedOperationException("The property " + qname + " may not be removed individually");
}
- nodeRef = tenantService.getName(nodeRef);
// Get the node
Node node = getNodeNotNull(nodeRef);
@@ -1900,7 +1885,6 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
public NodeRef getStoreArchiveNode(StoreRef storeRef)
{
- storeRef = tenantService.getBaseName(storeRef);
StoreRef archiveStoreRef = storeArchiveMap.getArchiveMap().get(storeRef);
if (archiveStoreRef == null)
{
diff --git a/source/java/org/alfresco/repo/node/db/hibernate/HibernateNodeDaoServiceImpl.java b/source/java/org/alfresco/repo/node/db/hibernate/HibernateNodeDaoServiceImpl.java
index a675442cd9..a1d15f4951 100644
--- a/source/java/org/alfresco/repo/node/db/hibernate/HibernateNodeDaoServiceImpl.java
+++ b/source/java/org/alfresco/repo/node/db/hibernate/HibernateNodeDaoServiceImpl.java
@@ -450,7 +450,7 @@ public class HibernateNodeDaoServiceImpl extends HibernateDaoSupport implements
public Store getStore(String protocol, String identifier)
{
- StoreKey storeKey = new StoreKey(protocol, identifier);
+ StoreKey storeKey = new StoreKey(protocol, tenantService.getName(identifier));
Store store = (Store) getHibernateTemplate().get(StoreImpl.class, storeKey);
// done
return store;
@@ -461,7 +461,7 @@ public class HibernateNodeDaoServiceImpl extends HibernateDaoSupport implements
*/
public NodeStatus getNodeStatus(NodeRef nodeRef, boolean update)
{
- NodeKey nodeKey = new NodeKey(nodeRef);
+ NodeKey nodeKey = new NodeKey(tenantService.getName(nodeRef));
NodeStatus status = null;
try
{
@@ -495,7 +495,7 @@ public class HibernateNodeDaoServiceImpl extends HibernateDaoSupport implements
public void recordChangeId(NodeRef nodeRef)
{
- NodeKey key = new NodeKey(nodeRef);
+ NodeKey key = new NodeKey(tenantService.getName(nodeRef));
NodeStatus status = (NodeStatus) getHibernateTemplate().get(NodeStatusImpl.class, key);
if (status == null)
@@ -1434,7 +1434,7 @@ public class HibernateNodeDaoServiceImpl extends HibernateDaoSupport implements
{
Query query = session.getNamedQuery(QUERY_GET_NODE_COUNT_FOR_STORE);
query.setString("protocol", storeRef.getProtocol())
- .setString("identifier", storeRef.getIdentifier())
+ .setString("identifier", tenantService.getName(storeRef.getIdentifier()))
.setMaxResults(1)
.setReadOnly(true);
return query.uniqueResult();
@@ -1455,7 +1455,7 @@ public class HibernateNodeDaoServiceImpl extends HibernateDaoSupport implements
{
Query query = session.getNamedQuery(QUERY_NODES_WITH_PROPERTY_STRING_VALUE_FOR_STORE);
query.setString("protocol", storeRef.getProtocol())
- .setString("identifier", storeRef.getIdentifier())
+ .setString("identifier", tenantService.getName(storeRef.getIdentifier()))
.setParameter("propQName", propQName)
.setString("propStringValue", propStringValue)
.setReadOnly(true);
diff --git a/source/java/org/alfresco/repo/node/index/NodeIndexer.java b/source/java/org/alfresco/repo/node/index/NodeIndexer.java
index bd35ec0000..9f26c3a6ad 100644
--- a/source/java/org/alfresco/repo/node/index/NodeIndexer.java
+++ b/source/java/org/alfresco/repo/node/index/NodeIndexer.java
@@ -28,6 +28,7 @@ import org.alfresco.repo.node.NodeServicePolicies;
import org.alfresco.repo.policy.JavaBehaviour;
import org.alfresco.repo.policy.PolicyComponent;
import org.alfresco.repo.search.Indexer;
+import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.namespace.NamespaceService;
@@ -50,6 +51,7 @@ public class NodeIndexer
private PolicyComponent policyComponent;
/** the component to index the node hierarchy */
private Indexer indexer;
+ private TenantService tenantService;
/**
* @param policyComponent used for registrations
@@ -66,6 +68,11 @@ public class NodeIndexer
{
this.indexer = indexer;
}
+
+ public void setTenantService(TenantService tenantService)
+ {
+ this.tenantService = tenantService;
+ }
/**
* Registers the policy behaviour methods
@@ -96,29 +103,29 @@ public class NodeIndexer
public void onCreateNode(ChildAssociationRef childAssocRef)
{
- indexer.createNode(childAssocRef);
+ indexer.createNode(tenantService.getName(childAssocRef));
}
public void onUpdateNode(NodeRef nodeRef)
{
- indexer.updateNode(nodeRef);
+ indexer.updateNode(tenantService.getName(nodeRef));
}
public void onDeleteNode(ChildAssociationRef childAssocRef, boolean isArchivedNode)
{
- indexer.deleteNode(childAssocRef);
+ indexer.deleteNode(tenantService.getName(childAssocRef));
}
public void onCreateChildAssociation(ChildAssociationRef childAssocRef, boolean isNew)
{
if (!isNew)
{
- indexer.createChildRelationship(childAssocRef);
+ indexer.createChildRelationship(tenantService.getName(childAssocRef));
}
}
public void onDeleteChildAssociation(ChildAssociationRef childAssocRef)
{
- indexer.deleteChildRelationship(childAssocRef);
+ indexer.deleteChildRelationship(tenantService.getName(childAssocRef));
}
}
diff --git a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java
index 2dbe4f3744..19cb51684c 100644
--- a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java
+++ b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java
@@ -566,9 +566,6 @@ public class ADMLuceneSearcherImpl extends AbstractLuceneBase implements LuceneS
boolean followAllParentLinks, String language) throws InvalidNodeRefException, XPathException
{
NodeSearcher nodeSearcher = new NodeSearcher(nodeService, getDictionaryService(), this);
-
- contextNodeRef = tenantService.getName(contextNodeRef);
-
return nodeSearcher.selectNodes(contextNodeRef, xpath, parameters, namespacePrefixResolver, followAllParentLinks, language);
}
diff --git a/source/java/org/alfresco/repo/usage/UsageServiceImpl.java b/source/java/org/alfresco/repo/usage/UsageServiceImpl.java
index e12cb44888..b734b83f91 100644
--- a/source/java/org/alfresco/repo/usage/UsageServiceImpl.java
+++ b/source/java/org/alfresco/repo/usage/UsageServiceImpl.java
@@ -29,7 +29,6 @@ import java.util.Set;
import org.alfresco.repo.domain.Node;
import org.alfresco.repo.node.db.NodeDaoService;
-import org.alfresco.repo.tenant.TenantService;
import org.alfresco.repo.usage.hibernate.UsageDeltaImpl;
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
import org.alfresco.service.cmr.repository.NodeRef;
@@ -44,10 +43,6 @@ public class UsageServiceImpl implements UsageService
{
private UsageDeltaDAO usageDeltaDao;
private NodeDaoService nodeDaoService;
- private TenantService tenantService;
-
- //private static Log logger = LogFactory.getLog(UsageServiceImpl.class);
-
public void setUsageDeltaDao(UsageDeltaDAO usageDeltaDao)
{
@@ -58,11 +53,6 @@ public class UsageServiceImpl implements UsageService
{
this.nodeDaoService = nodeDaoService;
}
-
- public void setTenantService(TenantService tenantService)
- {
- this.tenantService = tenantService;
- }
public void insertDelta(NodeRef usageNodeRef, long deltaSize)
@@ -103,7 +93,7 @@ public class UsageServiceImpl implements UsageService
{
ParameterCheck.mandatory("nodeRef", nodeRef);
- Node unchecked = nodeDaoService.getNode(tenantService.getName(nodeRef));
+ Node unchecked = nodeDaoService.getNode(nodeRef);
if (unchecked == null)
{
throw new InvalidNodeRefException("Node does not exist: " + nodeRef, nodeRef);