diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml
index afc80e15bb..7f2ad54280 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml
@@ -40,6 +40,7 @@
+
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/behaviour/RecordCopyBehaviours.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/behaviour/RecordCopyBehaviours.java
index 55850aaed6..1178927cad 100644
--- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/behaviour/RecordCopyBehaviours.java
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/behaviour/RecordCopyBehaviours.java
@@ -25,9 +25,10 @@ import java.util.Map;
import org.alfresco.module.org_alfresco_module_rm.RecordsManagementService;
import org.alfresco.module.org_alfresco_module_rm.RecordsManagementServiceRegistry;
-import org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService;
+import org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService;
import org.alfresco.module.org_alfresco_module_rm.identifier.IdentifierService;
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
+import org.alfresco.module.org_alfresco_module_rm.record.RecordService;
import org.alfresco.repo.copy.CopyBehaviourCallback;
import org.alfresco.repo.copy.CopyDetails;
import org.alfresco.repo.copy.DefaultCopyBehaviourCallback;
@@ -184,45 +185,50 @@ public class RecordCopyBehaviours implements RecordsManagementModel
* @param oldChildAssocRef
* @param newChildAssocRef
*/
- @SuppressWarnings("unused")
public void onMoveRecordFolderNode(ChildAssociationRef oldChildAssocRef, ChildAssociationRef newChildAssocRef)
{
- if (oldChildAssocRef.getParentRef().equals(newChildAssocRef.getParentRef()) == false)
+ final NodeService nodeService = rmServiceRegistry.getNodeService();
+
+ if (!nodeService.getType(newChildAssocRef.getParentRef()).equals(TYPE_RECORD_FOLDER))
{
- final NodeRef newNodeRef = newChildAssocRef.getChildRef();
- final NodeService nodeService = rmServiceRegistry.getNodeService();
- final RecordsManagementService rmService = rmServiceRegistry.getRecordsManagementService();
- final RecordsManagementActionService rmActionService = rmServiceRegistry.getRecordsManagementActionService();
-
- AuthenticationUtil.runAs(new AuthenticationUtil.RunAsWork