In certain circumstances update was not capturing aspects, properties, and

ACLs.  This fixes that.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3979 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2006-09-29 21:29:45 +00:00
parent 0b1accf9f9
commit 752e46e0f1
9 changed files with 99 additions and 9 deletions

View File

@@ -181,7 +181,7 @@ public class AVMRepository
DirectoryNode child = null;
if (dir instanceof LayeredDirectoryNode)
{
child = new LayeredDirectoryNodeImpl((String)null, store);
child = new LayeredDirectoryNodeImpl((String)null, store, null);
((LayeredDirectoryNode)child).setPrimaryIndirection(false);
((LayeredDirectoryNode)child).setLayerID(parent.getLayerID());
}
@@ -1581,6 +1581,23 @@ public class AVMRepository
return fgInstance;
}
public void setMetaDataFrom(String path, AVMNodeDescriptor from)
{
fLookupCount.set(1);
String [] pathParts = SplitPath(path);
AVMStore store = getAVMStoreByName(pathParts[0]);
if (store == null)
{
throw new AVMNotFoundException("Store not found: " + pathParts[0]);
}
AVMNode fromNode = AVMContext.fgInstance.fAVMNodeDAO.getByID(from.getId());
if (fromNode == null)
{
throw new AVMNotFoundException("Node not found: " + from.getPath());
}
store.setMetaDataFrom(pathParts[1], fromNode);
}
/**
* Add an aspect to an AVM Node.
* @param path The path to the node.