diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-disposition-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-disposition-context.xml
index 2688b3c450..ba01166921 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-disposition-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-disposition-context.xml
@@ -157,6 +157,30 @@
+
+
+
+
+
+
+
+ RECORD_FOLDER
+ RECORD
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
- RECORD_FOLDER
- RECORD
-
-
-
-
-
-
\ No newline at end of file
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties b/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties
index 64043f45a8..52e96cc45d 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties
@@ -56,6 +56,7 @@ capability.DeleteRecords.title=Delete Records
capability.TriggerAnEvent.title=Trigger An Event
capability.FileDestructionReport.title=File Destruction Report
capability.FileTransferReport.title=File Transfer Report
+capability.EndRetention.title=End Retention
# Hold Controls
capability.group.holdControls.title=Hold Controls
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/model/recordsPermissionModel.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/model/recordsPermissionModel.xml
index 92311a5200..59017fcf50 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/model/recordsPermissionModel.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/model/recordsPermissionModel.xml
@@ -95,6 +95,7 @@
+
@@ -183,6 +184,7 @@
+
@@ -486,6 +488,10 @@
+
+
+
+
\ No newline at end of file
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-context.xml
index 2d7f7e337a..784324a4ce 100755
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-context.xml
@@ -9,7 +9,7 @@
-
+
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v23-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v23-context.xml
index 786dabf4b7..ac52237135 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v23-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v23-context.xml
@@ -22,5 +22,16 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json b/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json
index 486c1fd0ba..4f42947a85 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json
@@ -143,7 +143,8 @@
"RemoveFromHold",
"FileHoldReport",
"DeleteHold",
- "EditHold"
+ "EditHold",
+ "EndRetention"
]
},
{
@@ -215,7 +216,8 @@
"RemoveFromHold",
"FileHoldReport",
"DeleteHold",
- "EditHold"
+ "EditHold",
+ "EndRetention"
]
}
]
\ No newline at end of file
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v23/RMv23EndRetentionCapabilityPatch.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v23/RMv23EndRetentionCapabilityPatch.java
new file mode 100644
index 0000000000..9fe8ee707b
--- /dev/null
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v23/RMv23EndRetentionCapabilityPatch.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2005-2014 Alfresco Software Limited.
+ *
+ * This file is part of Alfresco
+ *
+ * Alfresco is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Alfresco is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Alfresco. If not, see .
+ */
+package org.alfresco.module.org_alfresco_module_rm.patch.v23;
+
+import org.alfresco.module.org_alfresco_module_rm.patch.common.CapabilityPatch;
+import org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService;
+import org.alfresco.service.cmr.repository.NodeRef;
+
+/**
+ * RM v2.3 patch to add new end retention capability.
+ *
+ * @author Alex Balan
+ * @since 2.3
+ */
+public class RMv23EndRetentionCapabilityPatch extends CapabilityPatch
+{
+ /**
+ * @see org.alfresco.module.org_alfresco_module_rm.patch.common.CapabilityPatch#applyCapabilityPatch(org.alfresco.service.cmr.repository.NodeRef)
+ */
+ protected void applyCapabilityPatch(NodeRef filePlan)
+ {
+ // add new capability
+ addCapability(filePlan,
+ "EndRetention",
+ FilePlanRoleService.ROLE_ADMIN,
+ FilePlanRoleService.ROLE_RECORDS_MANAGER);
+
+ }
+}