diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-audit-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-audit-context.xml index bd134a7275..af429f0005 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-audit-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-audit-context.xml @@ -9,6 +9,7 @@ + + + + + + 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 a358dab64a..af191208d3 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 @@ -22,6 +22,7 @@ + @@ -36,6 +37,7 @@ + @@ -50,6 +52,7 @@ + @@ -71,6 +74,7 @@ + @@ -92,6 +96,7 @@ + @@ -114,6 +119,7 @@ + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml index 57bbcb9a87..e566e93cba 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml @@ -17,6 +17,7 @@ + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-freeze-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-freeze-context.xml index 05d61be3d0..49d4dd02f9 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-freeze-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-freeze-context.xml @@ -22,6 +22,7 @@ + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml index e41bc30206..d6ec629d4e 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml @@ -10,6 +10,7 @@ + + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml index 0ac8bb9851..ed2ea26d5d 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml @@ -8,6 +8,7 @@ class="org.alfresco.module.org_alfresco_module_rm.capability.impl.ViewRecordsCapability"> + + + + + + @@ -160,6 +166,7 @@ + + + + \ No newline at end of file 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 ab45c06cad..80efdcfbd3 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 @@ -21,6 +21,7 @@ + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml index ffce23a100..e9c39090ee 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml @@ -46,6 +46,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/capability/capabilities.get.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/capability/capabilities.get.json.ftl index a6c3061bbf..0176923709 100644 --- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/capability/capabilities.get.json.ftl +++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/capability/capabilities.get.json.ftl @@ -4,7 +4,7 @@ <#if groupedCapabilities??> "groupedCapabilities": [ - <#list groupedCapabilities?keys as groupedCapabilityKey> + <#list groupedCapabilities?keys?sort as groupedCapabilityKey> { "${groupedCapabilityKey}": { @@ -13,7 +13,7 @@ capabilities: { <#assign capabilities = groupedCapability.capabilities> - <#list capabilities?keys as capabilityKey> + <#list capabilities?keys?sort as capabilityKey> "${capabilityKey}": "${capabilities[capabilityKey]}"<#if capabilityKey_has_next>, } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/AbstractCapability.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/AbstractCapability.java index 36f0a089fe..2d1dd7479b 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/AbstractCapability.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/AbstractCapability.java @@ -54,9 +54,12 @@ public abstract class AbstractCapability extends RMSecurityCommon protected String title; protected String description; - /** Capability Group */ + /** Capability group */ protected Group group; + /** Capability index */ + protected String index; + /** Indicates whether this is a private capability or not */ protected boolean isPrivate = false; @@ -322,6 +325,19 @@ public abstract class AbstractCapability extends RMSecurityCommon this.group = group; } + /** + * @see org.alfresco.module.org_alfresco_module_rm.capability.Capability#getIndex() + */ + public String getIndex() + { + return this.index; + } + + public void setIndex(String index) + { + this.index = index; + } + /** * @see java.lang.Object#hashCode() */ diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/Capability.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/Capability.java index f00953491a..75790e95eb 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/Capability.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/Capability.java @@ -95,4 +95,11 @@ public interface Capability * @return Group capability group */ Group getGroup(); + + /** + * Gets the index of a capability + * + * @return String capability index + */ + String getIndex(); } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java index 7c5de444bd..6534e8bd38 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java @@ -188,6 +188,7 @@ public class CapabilityServiceImpl implements CapabilityService Collections.sort(groups, new Comparator() { + @Override public int compare(Group g1, Group g2) { return Integer.parseInt(g1.getIndex()) - Integer.parseInt(g2.getIndex()); @@ -220,6 +221,15 @@ public class CapabilityServiceImpl implements CapabilityService } } + Collections.sort(capabilities, new Comparator() + { + @Override + public int compare(Capability c1, Capability c2) + { + return Integer.parseInt(c1.getIndex()) - Integer.parseInt(c2.getIndex()); + } + }); + return capabilities; } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/capability/CapabilitiesGet.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/capability/CapabilitiesGet.java index 30d08f140d..a2bd9e0a6a 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/capability/CapabilitiesGet.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/capability/CapabilitiesGet.java @@ -95,7 +95,7 @@ public class CapabilitiesGet extends DeclarativeWebScript grouped = Boolean.parseBoolean(groupedString); } - Map model = new HashMap(1); + Map model = new TreeMap(); if (grouped == true) { // Construct the map which is needed to build the model @@ -174,7 +174,7 @@ public class CapabilitiesGet extends DeclarativeWebScript this.capabilityGroupTitle = capabilityGroupTitle; this.capabilityName = capabilityName; this.capabilityTitle = capabilityTitle; - this.capabilities = new HashMap(5); + this.capabilities = new TreeMap(); } public String getGroupId()