@Target(value=TYPE)
 @Retention(value=RUNTIME)
 @Component
public @interface UserListProvider
UserDetails as possible candidates for userTask and should return a list of usernames.
 Calculated usernames will be set as value of flowable:candidateUsers attribute for userTask.
 Annotated class can contain one or more methods with arbitrary number of parameters and List<String> return type:
   List<String> getDefaultUsers() {
       return Arrays.asList("anonymous", "admin");
   }
   List<String> getUsersByRole(String roleCode) {
       List<UserDetails> candidateUsers = ...;
       return candidateUsers.stream().map(UserDetails::getUsername).collect(toList());
   }
 
 Declared methods will be available in modeler with a possibility to pass into them actual parameters, include process variables.| Modifier and Type | Optional Element and Description | 
|---|---|
java.lang.String | 
description
Short explanation of searching algorithm to find appropriate users. 
 | 
java.lang.String | 
value  |