From 4e94c528138f8ee8044bb9e263e2a8ad88395253 Mon Sep 17 00:00:00 2001 From: Jan Vonka Date: Thu, 6 Sep 2007 11:33:38 +0000 Subject: [PATCH] Couple of MT fixes - default admin should not see tenant-specific stores - nodeRef properties should not be returned as tenant-specific git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6686 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/repo/node/db/DbNodeServiceImpl.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java b/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java index 0dca3e99dc..59d344c35a 100644 --- a/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java +++ b/source/java/org/alfresco/repo/node/db/DbNodeServiceImpl.java @@ -208,7 +208,7 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl StoreRef storeRef = store.getStoreRef(); try { - if (tenantService.isTenantUser()) + if (tenantService.isEnabled()) { tenantService.checkDomain(storeRef.getIdentifier()); storeRef = tenantService.getBaseName(storeRef); @@ -987,6 +987,12 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl PropertyValue propertyValue = entry.getValue(); // get the property definition PropertyDefinition propertyDef = dictionaryService.getProperty(propertyQName); + + if ((propertyDef != null) && (propertyDef.getDataType().getName().equals(DataTypeDefinition.NODE_REF)) && (propertyValue.getStringValue() != null)) + { + propertyValue.setStringValue(tenantService.getBaseName(new NodeRef(propertyValue.getStringValue())).toString()); + } + // convert to the correct type Serializable value = makeSerializableValue(propertyDef, propertyValue); // copy across @@ -1033,6 +1039,12 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl // get the property definition PropertyDefinition propertyDef = dictionaryService.getProperty(qname); + + if ((propertyDef != null) && (propertyDef.getDataType().getName().equals(DataTypeDefinition.NODE_REF)) && (propertyValue.getStringValue() != null)) + { + propertyValue.setStringValue(tenantService.getBaseName(new NodeRef(propertyValue.getStringValue())).toString()); + } + // convert to the correct type Serializable value = makeSerializableValue(propertyDef, propertyValue); // done