Class PeopleFlowActionTypeService
java.lang.Object
org.kuali.rice.krad.datadictionary.validation.AttributeValidatingTypeServiceBase
org.kuali.rice.krms.impl.type.KrmsTypeServiceBase
org.kuali.rice.krms.impl.peopleflow.PeopleFlowActionTypeService
- All Implemented Interfaces:
ActionTypeService,RemotableAttributeOwner
ActionTypeService implementation for PeopleFlow actions. The loaded Actions will place or extend
an attribute in the EngineResults whose key is "peopleFlowSelected" and value
is a String of the form (using EBNF-like notation):
(notification|approval):<peopleFlowId>{,(notification|approval):<peopleFlowId>}
An example value with two people flow actions specified would be:
"A:1000,F:1001"
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumenum used to specify the action type to be specified in the vended actions.Nested classes/interfaces inherited from class org.kuali.rice.krad.datadictionary.validation.AttributeValidatingTypeServiceBase
org.kuali.rice.krad.datadictionary.validation.AttributeValidatingTypeServiceBase.TypeAttributeDefinition, org.kuali.rice.krad.datadictionary.validation.AttributeValidatingTypeServiceBase.TypeAttributeValidationException -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a PeopleFlowActionTypeService of the given Type -
Method Summary
Modifier and TypeMethodDescriptionstatic PeopleFlowActionTypeServiceFactory method for getting aPeopleFlowActionTypeServiceorg.kuali.rice.kew.api.peopleflow.PeopleFlowServiceloadAction(org.kuali.rice.krms.api.repository.action.ActionDefinition actionDefinition) voidsetConfigurationService(org.kuali.rice.core.api.config.property.ConfigurationService configurationService) inject theConfigurationServiceto use internally.voidsetPeopleFlowService(org.kuali.rice.kew.api.peopleflow.PeopleFlowService peopleFlowService) inject thePeopleFlowServiceto use internally.org.kuali.rice.core.api.uif.RemotableAttributeFieldtranslateTypeAttribute(org.kuali.rice.krms.api.repository.type.KrmsTypeAttribute inputAttribute, org.kuali.rice.krms.api.repository.type.KrmsAttributeDefinition attributeDefinition) Translate aKrmsTypeAttributeinto aRemotableAttributeField.List<org.kuali.rice.core.api.uif.RemotableAttributeError> validateAttributes(String krmsTypeId, Map<String, String> attributes) Attributes must include a ATTRIBUTE_FIELD_NAMEList<org.kuali.rice.core.api.uif.RemotableAttributeError> validateAttributesAgainstExisting(String krmsTypeId, Map<String, String> newAttributes, Map<String, String> oldAttributes) Methods inherited from class org.kuali.rice.krms.impl.type.KrmsTypeServiceBase
getAttributeFields, getDataDictionaryRemoteFieldService, getTypeAttributeDefinitions, sortFields, validateNonDataDictionaryAttributeMethods inherited from class org.kuali.rice.krad.datadictionary.validation.AttributeValidatingTypeServiceBase
createErrorString, extractErrorsFromGlobalVariablesErrorMap, getAttributeErrorLabel, getAttributeFormatter, getAttributeValidatingExpression, getConfigurationService, getDataDictionaryService, getDictionaryValidationService, validateAttributeFormat, validateAttributeRequired, validateDataDictionaryAttribute, validatePrimitiveAttributeFromDescriptor, validateReferencesExistAndActiveMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.kuali.rice.krms.framework.type.RemotableAttributeOwner
getAttributeFields
-
Field Details
-
ATTRIBUTE_FIELD_NAME
- See Also:
-
NAME_ATTRIBUTE_FIELD
- See Also:
-
-
Constructor Details
-
PeopleFlowActionTypeService
Constructs a PeopleFlowActionTypeService of the given Type- Parameters:
type- required- Throws:
IllegalArgumentException- if type is null
-
-
Method Details
-
getInstance
Factory method for getting aPeopleFlowActionTypeService- Parameters:
type- indicates the type of action that the returnedPeopleFlowActionTypeServicewill produce- Returns:
- a
PeopleFlowActionTypeServicecorresponding to the givenPeopleFlowActionTypeService.Type.
-
setConfigurationService
public void setConfigurationService(org.kuali.rice.core.api.config.property.ConfigurationService configurationService) inject theConfigurationServiceto use internally.- Parameters:
configurationService-
-
loadAction
public Action loadAction(org.kuali.rice.krms.api.repository.action.ActionDefinition actionDefinition) - Specified by:
loadActionin interfaceActionTypeService- Parameters:
actionDefinition-- Returns:
Actionas defined by the givenActionDefinition- Throws:
org.kuali.rice.core.api.exception.RiceIllegalArgumentException- is actionDefinition is null, attributes do not contain the ATTRIBUTE_FIELD_NAME key, or the NAME_ATTRIBUTE_FIELD key.
-
translateTypeAttribute
public org.kuali.rice.core.api.uif.RemotableAttributeField translateTypeAttribute(org.kuali.rice.krms.api.repository.type.KrmsTypeAttribute inputAttribute, org.kuali.rice.krms.api.repository.type.KrmsAttributeDefinition attributeDefinition) Description copied from class:KrmsTypeServiceBaseTranslate aKrmsTypeAttributeinto aRemotableAttributeField. Override this method to provide custom translation of certain attributes.- Overrides:
translateTypeAttributein classKrmsTypeServiceBase- Parameters:
inputAttribute- theKrmsTypeAttributeto translateattributeDefinition- theKrmsAttributeDefinitionfor the given inputAttribute- Returns:
- a
RemotableAttributeFieldfor the given inputAttribute
-
validateAttributes
public List<org.kuali.rice.core.api.uif.RemotableAttributeError> validateAttributes(String krmsTypeId, Map<String, String> attributes) throws org.kuali.rice.core.api.exception.RiceIllegalArgumentExceptionAttributes must include a ATTRIBUTE_FIELD_NAME- Specified by:
validateAttributesin interfaceRemotableAttributeOwner- Overrides:
validateAttributesin classKrmsTypeServiceBase- Parameters:
krmsTypeId- the people flow type identifier. Must not be null or blank.attributes- the attributes to validate. Cannot be null.- Returns:
- Throws:
org.kuali.rice.core.api.exception.RiceIllegalArgumentException- if required attribute ATTRIBUTE_FIELD_NAME is not in the given attributes
-
validateAttributesAgainstExisting
public List<org.kuali.rice.core.api.uif.RemotableAttributeError> validateAttributesAgainstExisting(String krmsTypeId, Map<String, String> newAttributes, Map<String, throws org.kuali.rice.core.api.exception.RiceIllegalArgumentExceptionString> oldAttributes) - Specified by:
validateAttributesAgainstExistingin interfaceRemotableAttributeOwner- Overrides:
validateAttributesAgainstExistingin classKrmsTypeServiceBase- Throws:
org.kuali.rice.core.api.exception.RiceIllegalArgumentException
-
getPeopleFlowService
public org.kuali.rice.kew.api.peopleflow.PeopleFlowService getPeopleFlowService()- Returns:
- the configured
PeopleFlowService
-
setPeopleFlowService
public void setPeopleFlowService(org.kuali.rice.kew.api.peopleflow.PeopleFlowService peopleFlowService) inject thePeopleFlowServiceto use internally.- Parameters:
peopleFlowService-
-