Interface PeopleFlowTypeService


public interface PeopleFlowTypeService

Interface for services that implement the type-specific behaviors of people flows.

  • Method Details

    • filterToSelectableRoleIds

      List<String> filterToSelectableRoleIds(String kewTypeId, List<String> roleIds)

      Allows for the people flow to restrict the roles that can be selected when adding members to it.

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      roleIds - the set of ids to filter down. Must not be null.
      Returns:
      the roleIds from the above list that are valid to select. Will not return null.
    • resolveRoleQualifiers

      Map<String,String> resolveRoleQualifiers(String kewTypeId, String roleId, Document document, DocumentContent documentContent)

      Resolve any role qualifiers for the given roleId, and document (along with documentContent).

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      roleId - the role that the qualifiers are specific to. Must not be null or blank.
      document - the document that the qualifiers are being resolved against. Must not be null.
      documentContent - the contents for the document that the qualifiers are being resolved against. Must not be null.
      Returns:
      the resolved role qualifiers. Will not return null.
    • resolveMultipleRoleQualifiers

      List<Map<String,String>> resolveMultipleRoleQualifiers(String kewTypeId, String roleId, Document document, DocumentContent documentContent)

      Resolve any role qualifiers for the given roleId, and document (along with documentContent). Allows for more than one set of qualifiers to be returned for the purpose of matching.

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      roleId - the role that the qualifiers are specific to. Must not be null or blank.
      document - the document that the qualifiers are being resolved against. Must not be null.
      documentContent - the contents for the document that the qualifiers are being resolved against. Must not be null.
      Returns:
      a list of the resolved role qualifiers. Will not return null.
    • getAttributeFields

      List<RemotableAttributeField> getAttributeFields(String kewTypeId)

      get the attributes supported by the people flow type with the given kewTypeId.

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      Returns:
      the RemotableAttributeFields that the PeopleFlow type with the given id supports. Will not return null.
    • validateAttributes

      List<RemotableAttributeError> validateAttributes(String kewTypeId, Map<String,String> attributes) throws RiceIllegalArgumentException

      This method validates the passed in attributes for a kewTypeId generating a List of RemotableAttributeErrors.

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      attributes - the attributes to validate. Cannot be null.
      Returns:
      any errors that are discovered during validation. Will not return null.
      Throws:
      RiceIllegalArgumentException
    • validateAttributesAgainstExisting

      List<RemotableAttributeError> validateAttributesAgainstExisting(String kewTypeId, Map<String,String> newAttributes, Map<String,String> oldAttributes) throws RiceIllegalArgumentException

      This method validates the passed in attributes for a kewTypeId generating a List of RemotableAttributeErrors. This method used the oldAttributes to aid in validation. This is useful for validating "new" or "updated" attributes.

      Parameters:
      kewTypeId - the people flow type identifier. Must not be null or blank.
      newAttributes - the kim type attributes to validate. Cannot be null.
      oldAttributes - the old attributes to use for validation. Cannot be null.
      Returns:
      any errors that are discovered during validation. Will not return null.
      Throws:
      RiceIllegalArgumentException