end
if cancel_job.type == "MULTIBUILD" then
- cancel_job.get_sub_jobs().select{|x| x.event == "NONE" }.each do |sub|
- check_project_password( sub.get_project, tok[2], req)
- end
+ sub_projects = cancel_job.get_sub_jobs().map{|sub| sub.get_project }
+ check_multi_project_password(sub_projects,tok[2],req)
BuildCommServer.send(req, "\"#{cancel_job.id}, #{cancel_job.get_sub_jobs().map{|x| x.id}.join(", ")}\" will be canceled")
return prj
end
+ private
+ def check_multi_project_password(prj_list, passwd, req)
+
+ if prj_list.select{|prj| not prj.is_passwd_set?}.empty? then
+ if passwd.nil? or passwd.empty? then
+ raise BuildServerException.new("ERR011"), "Use -w option to input your project password"
+ end
+
+ if prj_list.select{|prj| prj.passwd_match?(passwd) }.empty? then
+ raise BuildServerException.new("ERR012"), ""
+ end
+ end
+ end
private
def check_project_password(prj, passwd, req)