diff --git a/source/java/org/alfresco/repo/action/ParameterizedItemAbstractBase.java b/source/java/org/alfresco/repo/action/ParameterizedItemAbstractBase.java index b89deabce0..27abdaa5cd 100644 --- a/source/java/org/alfresco/repo/action/ParameterizedItemAbstractBase.java +++ b/source/java/org/alfresco/repo/action/ParameterizedItemAbstractBase.java @@ -122,7 +122,8 @@ public abstract class ParameterizedItemAbstractBase extends CommonResourceAbstra definition.getType(), definition.isMandatory(), paramDisplayLabel, - definition.isMultiValued() + definition.isMultiValued(), + definition.getParameterConstraintName() )); } } diff --git a/source/java/org/alfresco/repo/action/executer/AddFeaturesActionExecuter.java b/source/java/org/alfresco/repo/action/executer/AddFeaturesActionExecuter.java index 49856965a8..1945e2445a 100644 --- a/source/java/org/alfresco/repo/action/executer/AddFeaturesActionExecuter.java +++ b/source/java/org/alfresco/repo/action/executer/AddFeaturesActionExecuter.java @@ -45,6 +45,7 @@ public class AddFeaturesActionExecuter extends ActionExecuterAbstractBase */ public static final String NAME = "add-features"; public static final String PARAM_ASPECT_NAME = "aspect-name"; + public static final String PARAM_CONSTRAINT = "ac-aspects"; /** * The node service diff --git a/source/test-java/org/alfresco/repo/action/executer/AddFeaturesActionExecuterTest.java b/source/test-java/org/alfresco/repo/action/executer/AddFeaturesActionExecuterTest.java index 8b6ab8b3d7..171db5779c 100644 --- a/source/test-java/org/alfresco/repo/action/executer/AddFeaturesActionExecuterTest.java +++ b/source/test-java/org/alfresco/repo/action/executer/AddFeaturesActionExecuterTest.java @@ -18,15 +18,21 @@ */ package org.alfresco.repo.action.executer; +import java.util.List; +import java.util.Locale; + import org.alfresco.model.ContentModel; import org.alfresco.repo.action.ActionImpl; import org.alfresco.repo.security.authentication.AuthenticationComponent; +import org.alfresco.service.cmr.action.ActionDefinition; +import org.alfresco.service.cmr.action.ParameterDefinition; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.namespace.QName; import org.alfresco.util.BaseSpringTest; import org.alfresco.util.GUID; +import org.springframework.extensions.surf.util.I18NUtil; /** * Add features action execution test @@ -109,4 +115,37 @@ public class AddFeaturesActionExecuterTest extends BaseSpringTest // Check that the node now has the classifiable aspect applied assertTrue(this.nodeService.hasAspect(this.nodeRef, ContentModel.ASPECT_CLASSIFIABLE)); } + + /** + * MNT-15802 + */ + public void testCheckLocalizedParamDefintionWithConstraint() + { + // test for other than default locale + I18NUtil.setLocale(Locale.GERMAN); + + ActionDefinition actionDef = executer.getActionDefinition(); + + List paramDef = actionDef.getParameterDefinitions(); + assertNotNull(paramDef); + + String constraintName = paramDef.get(0).getParameterConstraintName(); + assertNotNull(constraintName); + assertEquals(AddFeaturesActionExecuter.PARAM_CONSTRAINT, constraintName); + + // test for other than default locale + I18NUtil.setLocale(Locale.ITALY); + + actionDef = executer.getActionDefinition(); + + paramDef = actionDef.getParameterDefinitions(); + assertNotNull(paramDef); + + constraintName = paramDef.get(0).getParameterConstraintName(); + assertNotNull(constraintName); + assertEquals(AddFeaturesActionExecuter.PARAM_CONSTRAINT, constraintName); + + I18NUtil.setLocale(Locale.getDefault()); + + } }