mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
RM-449: It's possible to move folder to another folder
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.0@39297 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -30,6 +30,7 @@ import java.util.Set;
|
|||||||
|
|
||||||
import org.alfresco.error.AlfrescoRuntimeException;
|
import org.alfresco.error.AlfrescoRuntimeException;
|
||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
|
import org.alfresco.model.RenditionModel;
|
||||||
import org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService;
|
import org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService;
|
||||||
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementCustomModel;
|
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementCustomModel;
|
||||||
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
|
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
|
||||||
@@ -194,6 +195,13 @@ public class RecordsManagementServiceImpl implements RecordsManagementService,
|
|||||||
TYPE_RECORD_CATEGORY,
|
TYPE_RECORD_CATEGORY,
|
||||||
ContentModel.ASSOC_CONTAINS,
|
ContentModel.ASSOC_CONTAINS,
|
||||||
new JavaBehaviour(this, "onAddContentToContainer", NotificationFrequency.EVERY_EVENT));
|
new JavaBehaviour(this, "onAddContentToContainer", NotificationFrequency.EVERY_EVENT));
|
||||||
|
|
||||||
|
policyComponent.bindAssociationBehaviour(
|
||||||
|
QName.createQName(NamespaceService.ALFRESCO_URI, "onCreateChildAssociation"),
|
||||||
|
ASPECT_RECORD,
|
||||||
|
RenditionModel.ASSOC_RENDITION,
|
||||||
|
new JavaBehaviour(this, "onAddRecordThumbnail", NotificationFrequency.TRANSACTION_COMMIT)
|
||||||
|
);
|
||||||
|
|
||||||
// Register script execution behaviour on RM property update.
|
// Register script execution behaviour on RM property update.
|
||||||
this.policyComponent.bindClassBehaviour(QName.createQName(NamespaceService.ALFRESCO_URI, "onUpdateProperties"),
|
this.policyComponent.bindClassBehaviour(QName.createQName(NamespaceService.ALFRESCO_URI, "onUpdateProperties"),
|
||||||
@@ -228,8 +236,23 @@ public class RecordsManagementServiceImpl implements RecordsManagementService,
|
|||||||
*/
|
*/
|
||||||
public void onFileContent(ChildAssociationRef childAssocRef, boolean bNew)
|
public void onFileContent(ChildAssociationRef childAssocRef, boolean bNew)
|
||||||
{
|
{
|
||||||
// File the document
|
NodeRef nodeRef = childAssocRef.getChildRef();
|
||||||
rmActionService.executeRecordsManagementAction(childAssocRef.getChildRef(), "file");
|
if (nodeService.exists(nodeRef) == true)
|
||||||
|
{
|
||||||
|
// Ensure that the filed item is cm:content
|
||||||
|
QName type = nodeService.getType(nodeRef);
|
||||||
|
if (ContentModel.TYPE_CONTENT.equals(type) == true ||
|
||||||
|
dictionaryService.isSubClass(type, ContentModel.TYPE_CONTENT) == true)
|
||||||
|
{
|
||||||
|
// File the document
|
||||||
|
rmActionService.executeRecordsManagementAction(childAssocRef.getChildRef(), "file");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Raise an exception since we should only be filling content into a record folder
|
||||||
|
throw new AlfrescoRuntimeException("Unable to complete operation, because only content can be filed within a record folder.");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -254,6 +277,22 @@ public class RecordsManagementServiceImpl implements RecordsManagementService,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make sure the thumbnails of records are marked as file plan components as are therefore subject to the same
|
||||||
|
* permission restrictions.
|
||||||
|
*
|
||||||
|
* @param childAssocRef
|
||||||
|
* @param bNew
|
||||||
|
*/
|
||||||
|
public void onAddRecordThumbnail(ChildAssociationRef childAssocRef, boolean bNew)
|
||||||
|
{
|
||||||
|
NodeRef thumbnail = childAssocRef.getChildRef();
|
||||||
|
if (nodeService.exists(thumbnail) == true)
|
||||||
|
{
|
||||||
|
nodeService.addAspect(thumbnail, ASPECT_FILE_PLAN_COMPONENT, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called after a DispositionActionDefinition property has been updated.
|
* Called after a DispositionActionDefinition property has been updated.
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user