E-mail адреса пользователей для оповещений через CC
Данный скрипт вычисляет e-mail адреса участников задачи для поля CC, которое используется для оповещения пользователей.
package scripts.task_custom_field_value;
import com.trackstudio.exception.GranException;
import com.trackstudio.external.TaskUDFValueScript;
import com.trackstudio.secured.SecuredMessageBean;
import com.trackstudio.secured.SecuredTaskBean;
import com.trackstudio.secured.SecuredUserBean;
import java.util.HashSet;
public class MultilistUdf implements TaskUDFValueScript{
public void add(SecuredUserBean user, HashSet<String> emails) throws GranException{
if(user!=null && user.getEmail()!=null) emails.add(user.getEmail());
}
public Object calculate(SecuredTaskBean task) throws GranException{
if(task.getMessageCount()!=0) {
HashSet<String> emails = new HashSet<String>();
for(SecuredMessageBean message:task.getMessages()) {
add(message.getHandler(), emails);
add(message.getSubmitter(), emails);
}
return emails;
}
else return null;
}
}