Merged V3.2 to HEAD

17410: Merged V3.1 to V3.2
      16667: (record-only) Fix ETHREEOH-2477 - group-based perms (MT env)
      16883: Fix ETHREEOH-1544 - cannot paste an item, if cut from another web project (modifyLock errror)
      16918: Fix ETHREEOH-3053 - Deployment of non-stale file in a stale layered folder removes the file from FSR
      16947: (record-only) Temporarily comment-out testSubmitChangedAssets1 (intermittent permission failure)
      17162: Fix ETHREEOH-2850 - submitting delete of (web form) xml instance does not submit the associated deleted renditions
      17319: Fix ETHREEOH-3111 - ManageReviewTaskDialog (fix-up contributed patch)
   17418: Merged V3.1 to V3.2
      17141: Fix ETHREEOH-3088: Cut/Paste into self causes stack overflow
      17216: Fixed ETHREEOH-3170: DB errors on MSSQL with Snapshot Isolation enabled while CIFS copying
      17255: Fixed ETHREEOH-3180: Error appears when trying to search resources on Manage Task page
   17419: Fix for ETHREEOH-3296: Enterprise 3.X / Permissions Error When Cut & Paste on Sub-Folder
   17421: Review and tweaks of DB script port
   17423: Follow-on for ETHREEOH-3088
   17424: Missed check-in for ETHREEOH-3032 (CHK-10240)
   17437: ETHREEOH-2790 - OpenOffice-startup-context.xml needs to also initiate the connection to OpenOffice
   17441: Build fix: Fix AVM permission inheritance to match DM and fix common permission dao component
   17470: Fix for ETHREEOH-3350: Admin Console - Viewing user properties for user without home folder throws exception
___________________________________________________________________
Modified: svn:mergeinfo
   Merged /alfresco/BRANCHES/V3.1:r16667,16883,16918,16947,17141,17162,17216,17255,17319
   Merged /alfresco/BRANCHES/V3.2:r17410,17418-17419,17421,17423-17424,17437,17441,17470


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18137 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2010-01-19 13:18:50 +00:00
parent 60a9007e8e
commit 6b8cf8d13b
26 changed files with 9924 additions and 9759 deletions

View File

@@ -42,7 +42,7 @@ import org.springframework.extensions.surf.util.Pair;
* A plain directory. No monkey tricks except for possiblyCopy.
* @author britt
*/
public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectoryNode
public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDirectoryNode
{
static final long serialVersionUID = 9423813734583003L;
@@ -55,14 +55,14 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
super(store);
setVersionID(1);
}
/**
* Default constructor.
* Default constructor.
*/
public PlainDirectoryNodeImpl()
public PlainDirectoryNodeImpl()
{
}
/**
* Copy like constructor.
* @param other The other directory.
@@ -72,12 +72,12 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
AVMStore store, Long parentAcl, ACLCopyMode mode)
{
super(store);
setVersionID(other.getVersionID() + 1);
copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
setVersionID(other.getVersionID() + 1);
copyACLs(other, parentAcl, mode);
copyCreationAndOwnerBasicAttributes(other);
AVMDAOs.Instance().fAVMNodeDAO.save(this);
for (ChildEntry child : AVMDAOs.Instance().fChildEntryDAO.getByParent(other, null))
{
@@ -86,11 +86,11 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
child.getChild());
AVMDAOs.Instance().fChildEntryDAO.save(newChild);
}
copyProperties(other);
copyAspects(other);
}
/**
* Get a directory listing.
* @param lPath The lookup path.
@@ -117,7 +117,7 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
{
if (!AVMRepository.GetInstance().can(lPath.getAVMStore(), child.getChild(), PermissionService.READ_CHILDREN, lPath.getDirectlyContained()))
if (!AVMRepository.GetInstance().can(lPath.getAVMStore(), child.getChild(), PermissionService.READ_CHILDREN, lPath.getDirectlyContained()))
{
continue;
}
@@ -126,7 +126,7 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
{
continue;
}
result.put(child.getKey().getName(), child.getChild());
result.put(child.getKey().getName(), child.getChild());
}
return result;
}
@@ -175,14 +175,14 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
{
throw new AVMBadArgumentException("Path is null.");
}
SortedMap<String, AVMNodeDescriptor> result = new TreeMap<String, AVMNodeDescriptor>(String.CASE_INSENSITIVE_ORDER);
SortedMap<String, AVMNodeDescriptor> result = new TreeMap<String, AVMNodeDescriptor>(String.CASE_INSENSITIVE_ORDER);
List<ChildEntry> children = AVMDAOs.Instance().fChildEntryDAO.getByParent(this, childNamePattern);
for (ChildEntry child : children)
{
if (child.getChild().getType() == AVMNodeType.LAYERED_DIRECTORY ||
child.getChild().getType() == AVMNodeType.PLAIN_DIRECTORY)
{
if (!AVMRepository.GetInstance().can(null, child.getChild(), PermissionService.READ_CHILDREN, false))
if (!AVMRepository.GetInstance().can(null, child.getChild(), PermissionService.READ_CHILDREN, false))
{
continue;
}
@@ -228,7 +228,7 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
{
return null;
}
Pair<AVMNode, Boolean> result = new Pair<AVMNode, Boolean>(entry.getChild(), true);
Pair<AVMNode, Boolean> result = new Pair<AVMNode, Boolean>(entry.getChild(), true);
return result;
}
@@ -280,13 +280,15 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
{
DeletedNodeImpl ghost = new DeletedNodeImpl(lPath.getAVMStore(), child.getAcl());
AVMDAOs.Instance().fAVMNodeDAO.save(ghost);
ghost.setAncestor(child);
ghost.setDeletedType(child.getType());
ghost.copyCreationAndOwnerBasicAttributes(child);
AVMDAOs.Instance().fAVMNodeDAO.update(ghost);
ghost.copyCreationAndOwnerBasicAttributes(child);
ghost.copyAspects(child);
ghost.copyProperties(child);
AVMDAOs.Instance().fAVMNodeDAO.update(ghost);
putChild(name, ghost);
}
}
@@ -338,8 +340,8 @@ public class PlainDirectoryNodeImpl extends DirectoryNodeImpl implements PlainDi
newMe = new LayeredDirectoryNodeImpl(this, lPath.getAVMStore(), lPath,
lPath.isInThisLayer(), parentAclId, ACLCopyMode.COPY);
((LayeredDirectoryNodeImpl)newMe).setLayerID(lPath.getTopLayer().getLayerID());
AVMDAOs.Instance().fAVMNodeDAO.update(newMe);
AVMDAOs.Instance().fAVMNodeDAO.update(newMe);
}
else
{