Class FilePlanPermissionServiceImpl
- java.lang.Object
-
- org.alfresco.module.org_alfresco_module_rm.util.ServiceBaseImpl
-
- org.alfresco.module.org_alfresco_module_rm.security.FilePlanPermissionServiceImpl
-
- All Implemented Interfaces:
RMPermissionModel
,RecordsManagementCustomModel
,RecordsManagementModel
,FilePlanPermissionService
,NodeServicePolicies.OnMoveNodePolicy
,ClassPolicy
,Policy
,org.springframework.beans.factory.Aware
,org.springframework.context.ApplicationContextAware
public class FilePlanPermissionServiceImpl extends ServiceBaseImpl implements FilePlanPermissionService, RMPermissionModel, NodeServicePolicies.OnMoveNodePolicy
File plan permission service.- Since:
- 2.1
- Author:
- Roy Wetherall
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.alfresco.repo.policy.Policy
Policy.Arg
-
-
Field Summary
-
Fields inherited from class org.alfresco.module.org_alfresco_module_rm.util.ServiceBaseImpl
applicationContext, authenticationUtil, contentService, dictionaryService, nodeService, nodeTypeUtility, renditionService, transactionalResourceHelper
-
Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.OnMoveNodePolicy
QNAME
-
Fields inherited from interface org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementCustomModel
ASPECT_CUSTOM_ASSOCIATIONS, ASPECT_SUPPLEMENTAL_MARKING_LIST, CONSTRAINT_CUSTOM_SMLIST, CUSTOM_REF_CROSSREFERENCE, CUSTOM_REF_OBSOLETES, CUSTOM_REF_RENDITION, CUSTOM_REF_SUPERSEDES, CUSTOM_REF_SUPPORTS, CUSTOM_REF_VERSIONS, PROP_SUPPLEMENTAL_MARKING_LIST, RM_CUSTOM_MODEL, RM_CUSTOM_PREFIX, RM_CUSTOM_URI
-
Fields inherited from interface org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel
ASPECT_ARCHIVED, ASPECT_ASCENDED, ASPECT_CAVEAT_CONFIG_ROOT, ASPECT_COMMON_RECORD_DETAILS, ASPECT_COUNTABLE, ASPECT_CUSTOM_RM_DATA, ASPECT_CUT_OFF, ASPECT_DECLARED_RECORD, ASPECT_DISPOSITION_LIFECYCLE, ASPECT_DISPOSITION_PROCESSED, ASPECT_EMAIL_CONFIG_ROOT, ASPECT_EXTENDED_SECURITY, ASPECT_FILABLE, ASPECT_FILE_PLAN_COMPONENT, ASPECT_FROZEN, ASPECT_GHOSTED, ASPECT_HELD_CHILDREN, ASPECT_LOADED_DATA_SET_ID, ASPECT_RECORD, ASPECT_RECORD_COMPONENT_ID, ASPECT_RECORD_META_DATA, ASPECT_RECORD_ORIGINATING_DETAILS, ASPECT_RECORD_REJECTION_DETAILS, ASPECT_RECORDS_MANAGEMENT_ROOT, ASPECT_RM_SEARCH, ASPECT_SAVED_SEARCH, ASPECT_SCHEDULED, ASPECT_TRANSFERRED, ASPECT_TRANSFERRING, ASPECT_UNCUT_OFF, ASPECT_UNPUBLISHED_UPDATE, ASPECT_VERSIONED_RECORD, ASPECT_VITAL_RECORD, ASPECT_VITAL_RECORD_DEFINITION, ASSOC_CAVEAT_CONFIG, ASSOC_DISPOSITION_ACTION_DEFINITIONS, ASSOC_DISPOSITION_ACTION_HISTORY, ASSOC_DISPOSITION_SCHEDULE, ASSOC_EMAIL_CONFIG, ASSOC_EVENT_EXECUTIONS, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_RECORDS, ASSOC_HOLDS, ASSOC_NEXT_DISPOSITION_ACTION, ASSOC_TRANSFERRED, ASSOC_TRANSFERS, GL_URI, PROP_COMBINE_DISPOSITION_STEP_CONDITIONS, PROP_COUNT, PROP_CUT_OFF_DATE, PROP_DATE_FILED, PROP_DB_UNIQUENESS_ID, PROP_DECLARED_AT, PROP_DECLARED_BY, PROP_DISPOSITION_ACTION, PROP_DISPOSITION_ACTION_COMPLETED_AT, PROP_DISPOSITION_ACTION_COMPLETED_BY, PROP_DISPOSITION_ACTION_GHOST_ON_DESTROY, PROP_DISPOSITION_ACTION_ID, PROP_DISPOSITION_ACTION_NAME, PROP_DISPOSITION_ACTION_STARTED_AT, PROP_DISPOSITION_ACTION_STARTED_BY, PROP_DISPOSITION_AS_OF, PROP_DISPOSITION_AUTHORITY, PROP_DISPOSITION_DESCRIPTION, PROP_DISPOSITION_EVENT, PROP_DISPOSITION_EVENT_COMBINATION, PROP_DISPOSITION_EVENTS_ELIGIBLE, PROP_DISPOSITION_INSTRUCTIONS, PROP_DISPOSITION_LOCATION, PROP_DISPOSITION_PERIOD, PROP_DISPOSITION_PERIOD_PROPERTY, PROP_EVENT_EXECUTION_AUTOMATIC, PROP_EVENT_EXECUTION_COMPLETE, PROP_EVENT_EXECUTION_COMPLETED_AT, PROP_EVENT_EXECUTION_COMPLETED_BY, PROP_EVENT_EXECUTION_NAME, PROP_FROZEN_AT, PROP_FROZEN_BY, PROP_HELD_CHILDREN_COUNT, PROP_HOLD_REASON, PROP_IDENTIFIER, PROP_IS_CLOSED, PROP_LOADED_DATA_SET_IDS, PROP_LOCATION, PROP_MANUALLY_SET_AS_OF, PROP_ORIGIONAL_NAME, PROP_PUBLISH_IN_PROGRESS, PROP_READERS, PROP_RECORD_LEVEL_DISPOSITION, PROP_RECORD_ORIGINATING_CREATION_DATE, PROP_RECORD_ORIGINATING_LOCATION, PROP_RECORD_ORIGINATING_USER_ID, PROP_RECORD_REJECTION_DATE, PROP_RECORD_REJECTION_REASON, PROP_RECORD_REJECTION_USER_ID, PROP_REVIEW_AS_OF, PROP_REVIEW_PERIOD, PROP_ROOT_NODEREF, PROP_RS_DECLASSIFICATION_REVIEW_COMPLETED_AT, PROP_RS_DECLASSIFICATION_REVIEW_COMPLETED_BY, PROP_RS_DISPOITION_AUTHORITY, PROP_RS_DISPOITION_INSTRUCTIONS, PROP_RS_DISPOSITION_ACTION_AS_OF, PROP_RS_DISPOSITION_ACTION_NAME, PROP_RS_DISPOSITION_EVENTS, PROP_RS_DISPOSITION_EVENTS_ELIGIBLE, PROP_RS_DISPOSITION_PERIOD, PROP_RS_DISPOSITION_PERIOD_EXPRESSION, PROP_RS_HAS_DISPOITION_SCHEDULE, PROP_RS_HOLD_REASON, PROP_RS_VITAL_RECORD_REVIEW_PERIOD, PROP_RS_VITAL_RECORD_REVIEW_PERIOD_EXPRESSION, PROP_TRANSFER_ACCESSION_INDICATOR, PROP_TRANSFER_LOCATION, PROP_TRANSFER_PDF_INDICATOR, PROP_UNPUBLISHED_UPDATE, PROP_UPDATE_TO, PROP_UPDATED_PROPERTIES, PROP_VITAL_RECORD_INDICATOR, PROP_WRITERS, RM_MODEL, RM_PREFIX, RM_URI, TYPE_CAVEAT_CONFIG, TYPE_DISPOSITION_ACTION, TYPE_DISPOSITION_ACTION_DEFINITION, TYPE_DISPOSITION_SCHEDULE, TYPE_EMAIL_CONFIG, TYPE_EVENT_EXECUTION, TYPE_FILE_PLAN, TYPE_HOLD, TYPE_HOLD_CONTAINER, TYPE_NON_ELECTRONIC_DOCUMENT, TYPE_RECORD_CATEGORY, TYPE_RECORD_FOLDER, TYPE_RECORDS_MANAGEMENT_CONTAINER, TYPE_RM_SITE, TYPE_TRANSFER, TYPE_TRANSFER_CONTAINER, TYPE_UNFILED_RECORD_CONTAINER, TYPE_UNFILED_RECORD_FOLDER, UPDATE_TO_DISPOSITION_ACTION_DEFINITION
-
Fields inherited from interface org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel
ACCESS_AUDIT, ADD_MODIFY_EVENT_DATES, ADD_TO_HOLD, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, ATTACH_RULES_TO_METADATA_PROPERTIES, AUTHORIZE_ALL_TRANSFERS, AUTHORIZE_NOMINATED_TRANSFERS, CHANGE_OR_DELETE_REFERENCES, CLOSE_FOLDERS, CREATE_AND_ASSOCIATE_SELECTION_LISTS, CREATE_HOLD, CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, CREATE_MODIFY_DESTROY_EVENTS, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, CREATE_MODIFY_DESTROY_FOLDERS, CREATE_MODIFY_DESTROY_RECORD_TYPES, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, CREATE_MODIFY_DESTROY_ROLES, CREATE_MODIFY_DESTROY_TIMEFRAMES, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, CREATE_RECORDS, CYCLE_VITAL_RECORDS, DECLARE_AUDIT_AS_RECORD, DECLARE_RECORDS, DECLARE_RECORDS_IN_CLOSED_FOLDERS, DELETE_AUDIT, DELETE_LINKS, DELETE_RECORDS, DESTROY_RECORDS, DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, DISPLAY_RIGHTS_REPORT, EDIT_DECLARED_RECORD_METADATA, EDIT_NON_RECORD_METADATA, EDIT_RECORD_METADATA, EDIT_SELECTION_LISTS, ENABLE_DISABLE_AUDIT_BY_TYPES, EXPORT_AUDIT, EXTEND_RETENTION_PERIOD_OR_FREEZE, FILE_RECORDS, FILING, MAKE_OPTIONAL_PARAMETERS_MANDATORY, MANAGE_ACCESS_CONTROLS, MANAGE_ACCESS_RIGHTS, MANUALLY_CHANGE_DISPOSITION_DATES, MAP_CLASSIFICATION_GUIDE_METADATA, MAP_EMAIL_METADATA, MOVE_RECORDS, PASSWORD_CONTROL, PLANNING_REVIEW_CYCLES, RE_OPEN_FOLDERS, READ_RECORDS, REMOVE_FROM_HOLD, ROLE_ADMINISTRATOR, ROLE_NAME_ADMINISTRATOR, ROLE_NAME_POWER_USER, ROLE_NAME_RECORDS_MANAGER, ROLE_NAME_SECURITY_OFFICER, ROLE_NAME_USER, SELECT_AUDIT_METADATA, TRIGGER_AN_EVENT, UNDECLARE_RECORDS, UNFREEZE, UPDATE_CLASSIFICATION_DATES, UPDATE_EXEMPTION_CATEGORIES, UPDATE_TRIGGER_DATES, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, VIEW_RECORDS, VIEW_UPDATE_REASONS_FOR_FREEZE
-
-
Constructor Summary
Constructors Constructor Description FilePlanPermissionServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deletePermission(NodeRef nodeRef, String authority, String permission)
Deletes a permission from a file plan object.AuthorityService
getAuthorityService()
Gets the authority serviceFilePlanRoleService
getFilePlanRoleService()
Gets the file plan role serviceFilePlanService
getFilePlanService()
Gets the file plan serviceprotected OwnableService
getOwnableService()
Gets the ownable serviceprotected PermissionService
getPermissionService()
Gets the permission serviceprotected PolicyComponent
getPolicyComponent()
Gets the policy componentvoid
init()
Initialisation methodvoid
onAddRecord(NodeRef record, QName aspectTypeQName)
Sets ups records permission when aspect is added.void
onCreateHold(ChildAssociationRef childAssocRef)
Setup permissions on newly created hold.void
onCreateRecordFolder(ChildAssociationRef childAssocRef)
Setup permissions on new record foldervoid
onCreateTransfer(ChildAssociationRef childAssocRef)
Setup permissions on newly created transfer.void
onCreateUnfiledRecordFolder(ChildAssociationRef childAssocRef)
Setup permissions on new unfiled record foldervoid
onMoveNode(ChildAssociationRef oldChildAssocRef, ChildAssociationRef newChildAssocRef)
void
onMoveRecord(ChildAssociationRef sourceAssocRef, ChildAssociationRef destinationAssocRef)
onMoveRecord behaviourvoid
setAuthorityService(AuthorityService authorityService)
Sets the authority servicevoid
setFilePlanRoleService(FilePlanRoleService filePlanRoleService)
Sets the file plan role servicevoid
setFilePlanService(FilePlanService filePlanService)
Sets the file plan servicevoid
setOwnableService(OwnableService ownableService)
void
setPermission(NodeRef nodeRef, String authority, String permission)
Sets a permission on a file plan object.void
setPermissionService(PermissionService permissionService)
void
setPolicyComponent(PolicyComponent policyComponent)
void
setRecordsManagementAuditService(RecordsManagementAuditService recordsManagementAuditService)
Set the RM audit service.void
setupPermissions(NodeRef parent, NodeRef nodeRef)
Helper method to setup permissions.void
setupRecordCategoryPermissions(NodeRef recordCategory)
Setup permissions for a record category-
Methods inherited from class org.alfresco.module.org_alfresco_module_rm.util.ServiceBaseImpl
getFilePlan, getFilePlanComponentKind, getFilePlanComponentKindFromType, getInternalNodeService, getNextCount, getTypeAndApsects, instanceOf, instanceOf, isDeclared, isFilePlan, isFilePlanComponent, isFilePlanContainer, isHold, isRecord, isRecordCategory, isRecordFolder, isTransfer, isUnfiledRecordsContainer, setApplicationContext, setAuthenticationUtil, setContentService, setDictionaryService, setNodeService, setNodeTypeUtility, setRenditionService, setTransactionalResourceHelper
-
-
-
-
Method Detail
-
init
public void init()
Initialisation method
-
getPermissionService
protected PermissionService getPermissionService()
Gets the permission service- Returns:
- The permission service
-
setPermissionService
public void setPermissionService(PermissionService permissionService)
- Parameters:
permissionService
- permission service
-
getPolicyComponent
protected PolicyComponent getPolicyComponent()
Gets the policy component- Returns:
- The policy component
-
setPolicyComponent
public void setPolicyComponent(PolicyComponent policyComponent)
- Parameters:
policyComponent
- policy component
-
getOwnableService
protected OwnableService getOwnableService()
Gets the ownable service- Returns:
- The ownable service
-
setOwnableService
public void setOwnableService(OwnableService ownableService)
- Parameters:
ownableService
- ownable service
-
getAuthorityService
public AuthorityService getAuthorityService()
Gets the authority service- Returns:
- The authority service
-
setAuthorityService
public void setAuthorityService(AuthorityService authorityService)
Sets the authority service- Parameters:
authorityService
- The authority service
-
getFilePlanRoleService
public FilePlanRoleService getFilePlanRoleService()
Gets the file plan role service- Returns:
- The file plan role service
-
setFilePlanRoleService
public void setFilePlanRoleService(FilePlanRoleService filePlanRoleService)
Sets the file plan role service- Parameters:
filePlanRoleService
- The file plan role service to set
-
getFilePlanService
public FilePlanService getFilePlanService()
Gets the file plan service- Returns:
- The file plan service
-
setFilePlanService
public void setFilePlanService(FilePlanService filePlanService)
Sets the file plan service- Parameters:
filePlanService
- The file plan service to set
-
setRecordsManagementAuditService
public void setRecordsManagementAuditService(RecordsManagementAuditService recordsManagementAuditService)
Set the RM audit service.- Parameters:
recordsManagementAuditService
- The RM audit service.
-
setupRecordCategoryPermissions
public void setupRecordCategoryPermissions(NodeRef recordCategory)
Description copied from interface:FilePlanPermissionService
Setup permissions for a record category- Specified by:
setupRecordCategoryPermissions
in interfaceFilePlanPermissionService
- Parameters:
recordCategory
- record category node reference- See Also:
FilePlanPermissionService.setupRecordCategoryPermissions(org.alfresco.service.cmr.repository.NodeRef)
-
onCreateUnfiledRecordFolder
public void onCreateUnfiledRecordFolder(ChildAssociationRef childAssocRef)
Setup permissions on new unfiled record folder- Parameters:
childAssocRef
- child association reference
-
onCreateRecordFolder
public void onCreateRecordFolder(ChildAssociationRef childAssocRef)
Setup permissions on new record folder- Parameters:
childAssocRef
- child association reference
-
onCreateHold
public void onCreateHold(ChildAssociationRef childAssocRef)
Setup permissions on newly created hold.- Parameters:
childAssocRef
- child association reference
-
onCreateTransfer
public void onCreateTransfer(ChildAssociationRef childAssocRef)
Setup permissions on newly created transfer.- Parameters:
childAssocRef
- child association reference
-
setupPermissions
public void setupPermissions(NodeRef parent, NodeRef nodeRef)
Helper method to setup permissions.- Specified by:
setupPermissions
in interfaceFilePlanPermissionService
- Parameters:
parent
- parent node referencenodeRef
- child node reference
-
onAddRecord
public void onAddRecord(NodeRef record, QName aspectTypeQName)
Sets ups records permission when aspect is added.- Parameters:
record
-aspectTypeQName
-- See Also:
NodeServicePolicies.OnAddAspectPolicy.onAddAspect(NodeRef, QName)
-
onMoveRecord
public void onMoveRecord(ChildAssociationRef sourceAssocRef, ChildAssociationRef destinationAssocRef)
onMoveRecord behaviour- Parameters:
sourceAssocRef
- source association referencedestinationAssocRef
- destination association reference
-
setPermission
public void setPermission(NodeRef nodeRef, String authority, String permission)
Description copied from interface:FilePlanPermissionService
Sets a permission on a file plan object. Assumes allow is true. Cascades permission down to record folder. Cascades ReadRecord up to file plan.- Specified by:
setPermission
in interfaceFilePlanPermissionService
- Parameters:
nodeRef
- node referenceauthority
- authoritypermission
- permission- See Also:
FilePlanPermissionService.setPermission(NodeRef, String, String)
-
deletePermission
public void deletePermission(NodeRef nodeRef, String authority, String permission)
Description copied from interface:FilePlanPermissionService
Deletes a permission from a file plan object. Cascades removal down to record folder.- Specified by:
deletePermission
in interfaceFilePlanPermissionService
- Parameters:
nodeRef
- node referenceauthority
- authoritypermission
- permission- See Also:
RecordsManagementSecurityService.deletePermission(org.alfresco.service.cmr.repository.NodeRef, java.lang.String, java.lang.String)
-
onMoveNode
public void onMoveNode(ChildAssociationRef oldChildAssocRef, ChildAssociationRef newChildAssocRef)
-
-