mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Morning merge.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@2889 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -74,13 +74,24 @@ public class NodeAssocImpl implements NodeAssoc
|
||||
|
||||
public AssociationRef getNodeAssocRef()
|
||||
{
|
||||
boolean trashReference = false;
|
||||
// first check if it is available
|
||||
refReadLock.lock();
|
||||
try
|
||||
{
|
||||
if (nodeAssocRef != null)
|
||||
{
|
||||
return nodeAssocRef;
|
||||
// double check that the parent and child node references match those of our reference
|
||||
if (nodeAssocRef.getSourceRef() != source.getNodeRef() ||
|
||||
nodeAssocRef.getTargetRef() != target.getNodeRef())
|
||||
{
|
||||
trashReference = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// we are sure that the reference is correct
|
||||
return nodeAssocRef;
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
@@ -92,7 +103,7 @@ public class NodeAssocImpl implements NodeAssoc
|
||||
try
|
||||
{
|
||||
// double check
|
||||
if (nodeAssocRef == null )
|
||||
if (nodeAssocRef == null || trashReference)
|
||||
{
|
||||
nodeAssocRef = new AssociationRef(
|
||||
getSource().getNodeRef(),
|
||||
|
Reference in New Issue
Block a user