Merged V3.0 to HEAD

11540: Fix for ETHREEOH-642: forms-runtime.js doesn't process multiple select boxes correctly
   11541: Fix for occasional CIFS packet allocations that are over the maximum pooled packet size. The oversized packets are allocated from normal Java heap and will be picked up by the garbage collector. JLAN-42.
   11542: Removed dynamic-website and extranet projects from 3.0E codeline
   11543: Missing XML/HTML encoding in activity list feed.
   11544: Fix for ETHREEOH-528 - removed Complete Repository as Export option.
   11545: Updated NTLM example config in web.xml to include web-client ajax servlet mapping.
   11546: Merged V2.2 to V3.0
      11478: Keep creator and owner as orihinally set in AVM - Fix for ETWOTWO-604

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@12454 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2008-12-17 14:54:55 +00:00
parent 7c0901406b
commit 9538eae666
7 changed files with 21 additions and 3 deletions

View File

@@ -366,6 +366,13 @@ public abstract class AVMNodeImpl implements AVMNode, Serializable
fAspects = new HashSet<Long>(other.getAspects()); fAspects = new HashSet<Long>(other.getAspects());
} }
protected void copyCreationAndOwnerBasicAttributes(AVMNode other)
{
fBasicAttributes.setCreateDate(other.getBasicAttributes().getCreateDate());
fBasicAttributes.setCreator(other.getBasicAttributes().getCreator());
fBasicAttributes.setOwner(other.getBasicAttributes().getOwner());
}
protected void copyACLs(AVMNode other, Long parentAcl, ACLCopyMode mode) protected void copyACLs(AVMNode other, Long parentAcl, ACLCopyMode mode)
{ {
DbAccessControlList acl = other.getAcl(); DbAccessControlList acl = other.getAcl();
@@ -384,6 +391,7 @@ public abstract class AVMNodeImpl implements AVMNode, Serializable
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, ACLCopyMode.COPY); copyACLs(other, parentAcl, ACLCopyMode.COPY);
copyProperties(other); copyProperties(other);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**

View File

@@ -7,7 +7,7 @@ package org.alfresco.repo.avm;
* Ownership, timestamps, later perhaps ACLs * Ownership, timestamps, later perhaps ACLs
* @author britt * @author britt
*/ */
interface BasicAttributes public interface BasicAttributes
{ {
/** /**
* Set the creator of the node. * Set the creator of the node.

View File

@@ -68,6 +68,7 @@ public class DeletedNodeImpl extends AVMNodeImpl implements DeletedNode
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**

View File

@@ -116,6 +116,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
copyProperties(toCopy); copyProperties(toCopy);
copyACLs(toCopy, parentAcl, mode); copyACLs(toCopy, parentAcl, mode);
copyAspects(toCopy); copyAspects(toCopy);
copyCreationAndOwnerBasicAttributes(toCopy);
} }
else else
{ {
@@ -131,7 +132,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
} }
else else
{ {
// TODO: Will not pick up changes if we start with no permission on teh terget node - may need // TODO: Will not pick up changes if we start with no permission on the target node - may need
// to add // to add
setAcl(DbAccessControlListImpl.createLayeredAcl(null)); setAcl(DbAccessControlListImpl.createLayeredAcl(null));
} }
@@ -186,6 +187,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**
@@ -222,6 +224,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**
@@ -258,6 +261,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
copyProperties(dir); copyProperties(dir);
copyAspects(dir); copyAspects(dir);
copyACLs(dir, inheritedAcl, mode); copyACLs(dir, inheritedAcl, mode);
copyCreationAndOwnerBasicAttributes(dir);
} }
/** /**
@@ -768,6 +772,7 @@ class LayeredDirectoryNodeImpl extends DirectoryNodeImpl implements LayeredDirec
AVMDAOs.Instance().fAVMNodeDAO.flush(); AVMDAOs.Instance().fAVMNodeDAO.flush();
ghost.setAncestor(child); ghost.setAncestor(child);
ghost.setDeletedType(child.getType()); ghost.setDeletedType(child.getType());
ghost.copyCreationAndOwnerBasicAttributes(child);
this.putChild(name, ghost); this.putChild(name, ghost);
} }
else else

View File

@@ -75,6 +75,7 @@ class LayeredFileNodeImpl extends FileNodeImpl implements LayeredFileNode
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**

View File

@@ -89,6 +89,7 @@ class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectory
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
/** /**
@@ -277,6 +278,7 @@ class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectory
AVMDAOs.Instance().fAVMNodeDAO.flush(); AVMDAOs.Instance().fAVMNodeDAO.flush();
ghost.setAncestor(child); ghost.setAncestor(child);
ghost.setDeletedType(child.getType()); ghost.setDeletedType(child.getType());
ghost.copyCreationAndOwnerBasicAttributes(child);
putChild(name, ghost); putChild(name, ghost);
} }
else else

View File

@@ -103,6 +103,7 @@ class PlainFileNodeImpl extends FileNodeImpl implements PlainFileNode
copyProperties(other); copyProperties(other);
copyAspects(other); copyAspects(other);
copyACLs(other, parentAcl, mode); copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
} }
// TODO Is there a reason for passing all these parameters instead // TODO Is there a reason for passing all these parameters instead