Guest User

Untitled

a guest
Nov 18th, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 80.24 KB | None | 0 0
  1. {
  2. int nbConcreteActivitiesSisters = _nbExistingConcreteActivitiesChildren;
  3. int i = _nbExistingConcreteActivitiesChildren + 1;
  4. while (i <= _nbExistingConcreteActivitiesChildren + _occ) {
  5. labeled : {
  6. wilos.model.misc.concreteactivity.ConcreteActivity cact = new wilos.model.misc.concreteactivity.ConcreteActivity ();
  7. java.util.List < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.ArrayList < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  8. bdes.addAll (this.getAllBreakdownElements (_activity));
  9. if (_occ != 1 || _nbExistingConcreteActivitiesChildren != 0) {
  10. if (_activity.getPresentationName ().equals ("")) cact.setConcreteName (_activity.getName () + "#" + i);
  11. else cact.setConcreteName (_activity.getPresentationName () + "#" + i);
  12.  
  13. } else {
  14. if (_activity.getPresentationName ().equals ("")) cact.setConcreteName (_activity.getName ());
  15. else cact.setConcreteName (_activity.getPresentationName ());
  16.  
  17. }
  18. cact.addActivity (_activity);
  19. cact.setProject (_project);
  20. cact.setBreakdownElement (_activity);
  21. cact.setInstanciationOrder (i);
  22. cact.setWorkBreakdownElement (_activity);
  23. cact.setActivity (_activity);
  24. _cact.setConcreteBreakdownElements (this.concreteActivityService.getConcreteBreakdownElements (_cact));
  25. cact.addSuperConcreteActivity (_cact);
  26. cact.setDisplayOrder (cact.getSuperConcreteActivity ().getDisplayOrder () + java.lang.Integer.toString (_dispOrd + i));
  27. this.concreteActivityService.saveConcreteActivity (cact);
  28. int dispOrd = 0;
  29. java.util.Iterator extfor$iter = bdes.iterator ();
  30. while (extfor$iter.hasNext ()) {
  31. wilos.model.spem2.breakdownelement.BreakdownElement bde = (wilos.model.spem2.breakdownelement.BreakdownElement) extfor$iter.next ();
  32. dispOrd ++;
  33. if (bde instanceof wilos.model.spem2.activity.Activity) {
  34. wilos.model.spem2.activity.Activity act = (wilos.model.spem2.activity.Activity) bde;
  35. int occ = this.giveNbOccurences (act.getId (), _list, false);
  36. if (occ == 0 && _occ > 0) occ = _occ;
  37.  
  38. this.activityInstanciation (_project, act, cact, _list, occ, false, dispOrd);
  39. } else if (bde instanceof wilos.model.spem2.task.TaskDescriptor) {
  40. wilos.model.spem2.task.TaskDescriptor td = (wilos.model.spem2.task.TaskDescriptor) bde;
  41. int occ = this.giveNbOccurences (td.getId (), _list, false);
  42. if (occ == 0 && _occ > 0) occ = _occ;
  43.  
  44. this.taskDescriptorService.taskDescriptorInstanciation (_project, td, cact, occ, false, dispOrd);
  45. }
  46.  
  47. }
  48. this.concreteActivityService.saveConcreteActivity (cact);
  49. if (nbConcreteActivitiesSisters != 0) {
  50. wilos.model.misc.concreteactivity.ConcreteActivity lastConcreteActivity = null;
  51. java.util.Iterator extfor$iter$1 = _concreteActivitiesSisters.iterator ();
  52. while (extfor$iter$1.hasNext ()) {
  53. wilos.model.misc.concreteactivity.ConcreteActivity tmp = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter$1.next ();
  54. if (lastConcreteActivity == null || tmp.getInstanciationOrder () > lastConcreteActivity.getInstanciationOrder ()) {
  55. lastConcreteActivity = tmp;
  56. }
  57. }
  58. this.concreteWorkOrderService.saveConcreteWorkOrder (lastConcreteActivity.getId (), cact.getId (), wilos.utils.Constantes.WorkOrderType.FINISH_TO_START, _project.getId ());
  59. }
  60. nbConcreteActivitiesSisters ++;
  61. _concreteActivitiesSisters.add (cact);
  62. i ++;
  63. }}
  64. }
  65.  
  66. {
  67. if (_occ > 0) {
  68. java.util.Iterator extfor$iter = _cacts.iterator ();
  69. while (extfor$iter.hasNext ()) {
  70. wilos.model.misc.concreteactivity.ConcreteActivity tmp = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  71. java.lang.String strDispOrd = this.concreteActivityService.getMaxDisplayOrder (tmp);
  72. int dispOrd = java.lang.Integer.parseInt (strDispOrd) + 1;
  73. this.activityInstanciation (_project, _act, tmp, _list, _occ, true, dispOrd);
  74. if (tmp instanceof wilos.model.misc.project.Project) {
  75. wilos.model.misc.project.Project pj = (wilos.model.misc.project.Project) tmp;
  76. this.projectDao.saveOrUpdateProject (pj);
  77. } else if (tmp instanceof wilos.model.misc.concretephase.ConcretePhase) {
  78. wilos.model.misc.concretephase.ConcretePhase cph = (wilos.model.misc.concretephase.ConcretePhase) tmp;
  79. this.concretePhaseDao.saveOrUpdateConcretePhase (cph);
  80. } else if (tmp instanceof wilos.model.misc.concreteiteration.ConcreteIteration) {
  81. wilos.model.misc.concreteiteration.ConcreteIteration cit = (wilos.model.misc.concreteiteration.ConcreteIteration) tmp;
  82. this.concreteIterationDao.saveOrUpdateConcreteIteration (cit);
  83. } else if (tmp instanceof wilos.model.misc.concreteactivity.ConcreteActivity) {
  84. wilos.model.misc.concreteactivity.ConcreteActivity cact = (wilos.model.misc.concreteactivity.ConcreteActivity) tmp;
  85. this.concreteActivityService.saveConcreteActivity (cact);
  86. }
  87.  
  88. this.concreteActivityService.saveConcreteActivity (tmp);
  89. }
  90. } else {
  91. java.util.Set < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.HashSet < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  92. bdes.addAll (this.getAllBreakdownElements (_act));
  93. java.util.Set < wilos.model.misc.concreteactivity.ConcreteActivity > cacts = new java.util.HashSet < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  94. cacts.addAll (this.getAllConcreteActivitiesForAProject (_act, _project));
  95. java.util.Iterator extfor$iter$1 = bdes.iterator ();
  96. while (extfor$iter$1.hasNext ()) {
  97. wilos.model.spem2.breakdownelement.BreakdownElement bde = (wilos.model.spem2.breakdownelement.BreakdownElement) extfor$iter$1.next ();
  98. if (bde instanceof wilos.model.spem2.activity.Activity) {
  99. wilos.model.spem2.activity.Activity act = (wilos.model.spem2.activity.Activity) bde;
  100. int occ = this.giveNbOccurences (act.getId (), _list, true);
  101. this.activityUpdate (_project, act, cacts, _list, occ);
  102. } else if (bde instanceof wilos.model.spem2.task.TaskDescriptor) {
  103. wilos.model.spem2.task.TaskDescriptor td = (wilos.model.spem2.task.TaskDescriptor) bde;
  104. int occ = this.giveNbOccurences (td.getId (), _list, true);
  105. this.taskDescriptorService.taskDescriptorUpdate (_project, td, cacts, occ);
  106. }
  107.  
  108. }
  109. }
  110. }
  111.  
  112. {
  113. java.util.Set < wilos.model.misc.concreteactivity.ConcreteActivity > tmp = new java.util.HashSet < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  114. this.activityDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_act);
  115. java.util.Iterator extfor$iter = _act.getConcreteActivities ().iterator ();
  116. while (extfor$iter.hasNext ()) {
  117. wilos.model.misc.concreteactivity.ConcreteActivity bde = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  118. tmp.add (bde);
  119. }
  120. return tmp;
  121. }
  122.  
  123. {
  124. this.activityDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_act);
  125. java.util.Set < wilos.model.spem2.guide.Guidance > tmp = new java.util.HashSet < wilos.model.spem2.guide.Guidance > ();
  126. java.util.Iterator extfor$iter = _act.getGuidances ().iterator ();
  127. while (extfor$iter.hasNext ()) {
  128. wilos.model.spem2.guide.Guidance g = (wilos.model.spem2.guide.Guidance) extfor$iter.next ();
  129. tmp.add (g);
  130. }
  131. return tmp;
  132. }
  133.  
  134. {
  135. this.activityDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_act);
  136. java.util.List < wilos.model.misc.concreteactivity.ConcreteActivity > tmp = new java.util.ArrayList < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  137. java.util.Iterator extfor$iter = _act.getConcreteActivities ().iterator ();
  138. while (extfor$iter.hasNext ()) {
  139. wilos.model.misc.concreteactivity.ConcreteActivity ca = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  140. tmp.add (ca);
  141. }
  142. return tmp;
  143. }
  144.  
  145. {
  146. java.util.List < wilos.model.misc.concreteactivity.ConcreteActivity > concreteActivities = new java.util.ArrayList < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  147. java.util.Iterator extfor$iter = this.getHibernateTemplate ().loadAll (null).iterator ();
  148. while (extfor$iter.hasNext ()) {
  149. java.lang.Object obj = (java.lang.Object) extfor$iter.next ();
  150. wilos.model.misc.concreteactivity.ConcreteActivity ca = (wilos.model.misc.concreteactivity.ConcreteActivity) obj;
  151. concreteActivities.add (ca);
  152. }
  153. return concreteActivities;
  154. }
  155.  
  156. {
  157. java.util.List concreteactvities = this.getHibernateTemplate ().find ("from ConcreteActivity a where a.id=?", _id);
  158. {
  159. labeled : return concreteactvities.size () > 0;
  160. }}
  161.  
  162. {
  163. java.util.List concreteactvities = this.getHibernateTemplate ().find ("from ConcreteActivity a where a.prefix=?", _prefix);
  164. {
  165. labeled : if (concreteactvities.size () > 0) return (wilos.model.misc.concreteactivity.ConcreteActivity) concreteactvities.get (0);
  166. else return null;
  167.  
  168. }}
  169.  
  170. {
  171. {
  172. labeled : if (! _name.equals ("")) {
  173. java.util.List activities = this.getHibernateTemplate ().find ("from Activity a where a.name=?", _name);
  174. if (activities.size () > 0) return (wilos.model.misc.concreteactivity.ConcreteActivity) activities.get (0);
  175.  
  176. }
  177. } return null;
  178. }
  179.  
  180. {
  181. java.util.Set < wilos.model.misc.concretetask.ConcreteTaskDescriptor > concreteTaskDescriptors = new java.util.HashSet < wilos.model.misc.concretetask.ConcreteTaskDescriptor > ();
  182. this.concreteRoleDescriptorDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_concreteRoleDescriptor);
  183. this.concreteRoleDescriptorDao.getSessionFactory ().getCurrentSession ().refresh (_concreteRoleDescriptor);
  184. java.util.Iterator extfor$iter = _concreteRoleDescriptor.getPrimaryConcreteTaskDescriptors ().iterator ();
  185. while (extfor$iter.hasNext ()) {
  186. wilos.model.misc.concretetask.ConcreteTaskDescriptor concreteTaskDescriptor = (wilos.model.misc.concretetask.ConcreteTaskDescriptor) extfor$iter.next ();
  187. concreteTaskDescriptors.add (concreteTaskDescriptor);
  188. }
  189. return concreteTaskDescriptors;
  190. }
  191.  
  192. {
  193. _concreteRoleDescriptor = this.getConcreteRoleDescriptor (_concreteRoleDescriptor.getId ());
  194. if (_concreteRoleDescriptor != null && _concreteRoleDescriptor.getParticipant () == null) {
  195. java.util.Set < wilos.model.misc.concreteactivity.ConcreteActivity > lca = _concreteRoleDescriptor.getSuperConcreteActivities ();
  196. java.util.Iterator extfor$iter$1 = lca.iterator ();
  197. while (extfor$iter$1.hasNext ()) {
  198. wilos.model.misc.concreteactivity.ConcreteActivity ca = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter$1.next ();
  199. java.util.Set < wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement > lcbe = ca.getConcreteBreakdownElements ();
  200. java.util.Iterator extfor$iter = lcbe.iterator ();
  201. while (extfor$iter.hasNext ()) {
  202. wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement cbe = (wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement) extfor$iter.next ();
  203. if (cbe instanceof wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor) {
  204. wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor cwpd = (wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor) cbe;
  205. if (cwpd.getWorkProductDescriptor ().getResponsibleRoleDescriptor () != null) {
  206. if (_concreteRoleDescriptor.getRoleDescriptor ().getId ().equals (cwpd.getWorkProductDescriptor ().getResponsibleRoleDescriptor ().getId ())) {
  207. return _concreteRoleDescriptor;
  208. }
  209. }
  210. }
  211. if (cbe instanceof wilos.model.misc.concretetask.ConcreteTaskDescriptor) {
  212. wilos.model.misc.concretetask.ConcreteTaskDescriptor ctd = (wilos.model.misc.concretetask.ConcreteTaskDescriptor) cbe;
  213. if (ctd.getTaskDescriptor ().getMainRole () != null) {
  214. if (_concreteRoleDescriptor.getRoleDescriptor ().getId ().equals (ctd.getTaskDescriptor ().getMainRole ().getId ())) {
  215. return _concreteRoleDescriptor;
  216. }
  217. }
  218. }
  219. }
  220. }
  221. this.removeConcreteRoleDescriptor (_concreteRoleDescriptor);
  222. } else if (_concreteRoleDescriptor.getParticipant () != null) {
  223. _concreteRoleDescriptor.getParticipant ().getName ();
  224. return _concreteRoleDescriptor;
  225. }
  226.  
  227. return null;
  228. }
  229.  
  230. {
  231. this.projectDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_project);
  232. java.util.List < wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement > tmp = new java.util.ArrayList < wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement > ();
  233. java.util.Iterator extfor$iter = this.concreteWorkBreakdownElementDao.getAllConcreteWorkBreakdownElements ().iterator ();
  234. while (extfor$iter.hasNext ()) {
  235. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement cwbde = (wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement) extfor$iter.next ();
  236. wilos.model.spem2.workbreakdownelement.WorkBreakdownElement wbde = cwbde.getWorkBreakdownElement ();
  237. if (! (cwbde instanceof wilos.model.misc.project.Project) && wbde != null) {
  238. java.lang.String id = cwbde.getProject ().getId ();
  239. if (id.equals (_project.getId ())) {
  240. tmp.add (cwbde);
  241. }
  242. }
  243. }
  244. return tmp;
  245. }
  246.  
  247. {
  248. this.concreteWorkBreakdownElementDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_cwbde);
  249. java.util.List < wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement > tmp = new java.util.ArrayList < wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement > ();
  250. java.util.Iterator extfor$iter = _cwbde.getSuperConcreteActivities ().iterator ();
  251. while (extfor$iter.hasNext ()) {
  252. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement cwbde = (wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement) extfor$iter.next ();
  253. tmp.add (cwbde);
  254. }
  255. return tmp;
  256. }
  257.  
  258. {
  259. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > predecessorHashMap = new java.util.ArrayList < java.util.HashMap < java.lang.String, java.lang.Object > > ();
  260. if (_cwbde != null) {
  261. _cwbde = this.getConcreteWorkBreakdownElement (_cwbde.getId ());
  262. if (_cwbde != null) {
  263. java.util.Iterator extfor$iter = _cwbde.getConcretePredecessors ().iterator ();
  264. while (extfor$iter.hasNext ()) {
  265. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkOrder cwo = (wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkOrder) extfor$iter.next ();
  266. java.util.HashMap < java.lang.String, java.lang.Object > hm = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  267. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement cPred = this.getConcreteWorkBreakdownElementDao ().getConcreteWorkBreakdownElement (cwo.getConcreteWorkOrderId ().getConcretePredecessorId ());
  268. hm.put ("pred", cPred.getConcreteName ());
  269. hm.put ("plannedStartingDate", cPred.getPlannedStartingDate ());
  270. hm.put ("plannedFinishingDate", cPred.getPlannedFinishingDate ());
  271. hm.put ("linkType", cwo.getConcreteLinkType ());
  272. predecessorHashMap.add (hm);
  273. }
  274. }
  275. }
  276. return predecessorHashMap;
  277. }
  278.  
  279. {
  280. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > successorHashMap = new java.util.ArrayList < java.util.HashMap < java.lang.String, java.lang.Object > > ();
  281. if (_cwbde != null) {
  282. _cwbde = this.getConcreteWorkBreakdownElement (_cwbde.getId ());
  283. if (_cwbde != null) {
  284. java.util.Iterator extfor$iter = _cwbde.getConcreteSuccessors ().iterator ();
  285. while (extfor$iter.hasNext ()) {
  286. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkOrder cwo = (wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkOrder) extfor$iter.next ();
  287. java.util.HashMap < java.lang.String, java.lang.Object > hm = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  288. wilos.model.misc.concreteworkbreakdownelement.ConcreteWorkBreakdownElement cSucc = this.getConcreteWorkBreakdownElementDao ().getConcreteWorkBreakdownElement (cwo.getConcreteWorkOrderId ().getConcreteSuccessorId ());
  289. hm.put ("succ", cSucc.getConcreteName ());
  290. hm.put ("plannedStartingDate", cSucc.getPlannedStartingDate ());
  291. hm.put ("plannedFinishingDate", cSucc.getPlannedFinishingDate ());
  292. hm.put ("linkType", cwo.getConcreteLinkType ());
  293. successorHashMap.add (hm);
  294. }
  295. }
  296. }
  297. return successorHashMap;
  298. }
  299.  
  300. {
  301. _concreteWorkProductDescriptor = this.getConcreteWorkProductDescriptor (_concreteWorkProductDescriptor.getId ());
  302. if (_concreteWorkProductDescriptor != null && _concreteWorkProductDescriptor.getParticipant () == null) {
  303. java.util.Set < wilos.model.misc.concretetask.ConcreteTaskDescriptor > lctd = _concreteWorkProductDescriptor.getProducerConcreteTasks ();
  304. boolean tache_commence = false;
  305. java.util.Iterator extfor$iter = lctd.iterator ();
  306. while (extfor$iter.hasNext ()) {
  307. wilos.model.misc.concretetask.ConcreteTaskDescriptor ctd = (wilos.model.misc.concretetask.ConcreteTaskDescriptor) extfor$iter.next ();
  308. if (ctd.getState ().equals (wilos.utils.Constantes.State.STARTED)) {
  309. tache_commence = true;
  310. }
  311. }
  312. if (! tache_commence) {
  313. this.removeConcreteWorkProductDescriptor (_concreteWorkProductDescriptor);
  314. } else {
  315. return _concreteWorkProductDescriptor;
  316. }
  317. } else if (_concreteWorkProductDescriptor.getParticipant () != null) {
  318. getParticipant (_concreteWorkProductDescriptor).getName ();
  319. return _concreteWorkProductDescriptor;
  320. }
  321.  
  322. return null;
  323. }
  324.  
  325. {
  326. _concreteWorkProductDescriptor = this.concreteWorkProductDescriptorDao.getConcreteWorkProductDescriptor (_concreteWorkProductDescriptor.getId ());
  327. if (_concreteWorkProductDescriptor != null) {
  328. if (_concreteWorkProductDescriptor.getParticipant () == null) {
  329. _concreteWorkProductDescriptor.setParticipant (_user.getId ());
  330. this.concreteWorkProductDescriptorDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_concreteWorkProductDescriptor);
  331. wilos.model.spem2.role.RoleDescriptor responsibleRole = _concreteWorkProductDescriptor.getWorkProductDescriptor ().getResponsibleRoleDescriptor ();
  332. if (responsibleRole != null) {
  333. this.roleDescriptorService.getRoleDescriptorDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (responsibleRole);
  334. java.util.Set < wilos.model.misc.concreterole.ConcreteRoleDescriptor > listecrd = responsibleRole.getConcreteRoleDescriptors ();
  335. java.util.Iterator extfor$iter = listecrd.iterator ();
  336. boolean break_0 = false;
  337. while (extfor$iter.hasNext () && ! break_0) {
  338. wilos.model.misc.concreterole.ConcreteRoleDescriptor tmpListeRd = (wilos.model.misc.concreterole.ConcreteRoleDescriptor) extfor$iter.next ();
  339. if (! break_0) if (tmpListeRd.getParticipant () != null) {
  340. if (! break_0) if (tmpListeRd.getParticipant ().getId ().equals (_user.getId ())) {
  341. this.concreteRoleDescriptorService.getConcreteRoleDescriptorDao ().saveOrUpdateConcreteRoleDescriptor (tmpListeRd);
  342. _concreteWorkProductDescriptor.addResponsibleConcreteRoleDescriptor (tmpListeRd);
  343. break_0 = true;
  344. }
  345.  
  346. }
  347.  
  348. }
  349. }
  350. _concreteWorkProductDescriptor.setState (wilos.utils.Constantes.State.READY);
  351. this.concreteWorkProductDescriptorDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_concreteWorkProductDescriptor);
  352. this.participantService.saveConcreteWorkProductDescriptorForAParticipant (_user, _concreteWorkProductDescriptor);
  353. return _concreteWorkProductDescriptor;
  354. } else {
  355. _concreteWorkProductDescriptor.getWorkProductDescriptor ().getResponsibleRoleDescriptor ();
  356. return _concreteWorkProductDescriptor;
  357. }
  358. }
  359. return null;
  360. }
  361.  
  362. {
  363. boolean afficher = false;
  364. this.concreteWorkProductDescriptorDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_concreteWorkProductDescriptor);
  365. wilos.model.spem2.workproduct.WorkProductDescriptor tmp = _concreteWorkProductDescriptor.getWorkProductDescriptor ();
  366. wilos.model.spem2.role.RoleDescriptor tmpRoleDescriptor;
  367. wilos.model.spem2.workproduct.WorkProductDescriptor tmp2 = this.workProductDescriptorService.getWorkProductDescriptorById (tmp.getId ());
  368. if (tmp2.getResponsibleRoleDescriptor () == null) {
  369. return false;
  370. }
  371. tmpRoleDescriptor = tmp2.getResponsibleRoleDescriptor ();
  372. wilos.model.spem2.role.RoleDescriptor rd = this.roleDescriptorService.getRoleDescriptor (tmpRoleDescriptor.getId ());
  373. java.util.List < wilos.model.misc.concreterole.ConcreteRoleDescriptor > listeRd = this.concreteRoleDescriptorService.getAllConcreteRoleDescriptorForARoleDescriptor (rd.getId ());
  374. java.util.Iterator extfor$iter$2 = listeRd.iterator ();
  375. while (extfor$iter$2.hasNext ()) {
  376. wilos.model.misc.concreterole.ConcreteRoleDescriptor tmpListeRd = (wilos.model.misc.concreterole.ConcreteRoleDescriptor) extfor$iter$2.next ();
  377. wilos.model.misc.concreterole.ConcreteRoleDescriptor crd = this.concreteRoleDescriptorService.getConcreteRoleDescriptor (tmpListeRd.getId ());
  378. if (crd.getParticipant () == null) {
  379. afficher = false;
  380. } else {
  381. if (crd.getParticipant ().getId ().equals (_participant.getId ())) {
  382. java.util.Iterator extfor$iter$1 = crd.getSuperConcreteActivities ().iterator ();
  383. while (extfor$iter$1.hasNext ()) {
  384. wilos.model.misc.concreteactivity.ConcreteActivity cact1 = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter$1.next ();
  385. java.util.Iterator extfor$iter = _concreteWorkProductDescriptor.getSuperConcreteActivities ().iterator ();
  386. while (extfor$iter.hasNext ()) {
  387. wilos.model.misc.concreteactivity.ConcreteActivity cact2 = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  388. if (cact1.getId ().equals (cact2.getId ())) {
  389. return true;
  390. }
  391. }
  392. }
  393. }
  394. }
  395. }
  396. return afficher;
  397. }
  398.  
  399. {
  400. java.util.Set < wilos.model.spem2.activity.Activity > tmp = new java.util.HashSet < wilos.model.spem2.activity.Activity > ();
  401. this.guidanceDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_guidance);
  402. java.util.Iterator extfor$iter = _guidance.getActivities ().iterator ();
  403. while (extfor$iter.hasNext ()) {
  404. wilos.model.spem2.activity.Activity act = (wilos.model.spem2.activity.Activity) extfor$iter.next ();
  405. tmp.add (act);
  406. }
  407. return tmp;
  408. }
  409.  
  410. {
  411. final java.util.List < org.itracker.model.Issue > issues;
  412. if (availableProjectsOnly) {
  413. issues = getIssueDAO ().findByCreatorInAvailableProjects (userId, org.itracker.services.util.IssueUtilities.STATUS_CLOSED);
  414. } else {
  415. issues = getIssueDAO ().findByCreator (userId, org.itracker.services.util.IssueUtilities.STATUS_CLOSED);
  416. }
  417. return issues;
  418. }
  419.  
  420. {
  421. final java.util.List < org.itracker.model.Issue > issues;
  422. if (availableProjectsOnly) {
  423. issues = getIssueDAO ().findByOwnerInAvailableProjects (userId, org.itracker.services.util.IssueUtilities.STATUS_RESOLVED);
  424. } else {
  425. issues = getIssueDAO ().findByOwner (userId, org.itracker.services.util.IssueUtilities.STATUS_RESOLVED);
  426. }
  427. return issues;
  428. }
  429.  
  430. {
  431. final java.util.List < org.itracker.model.Issue > issues;
  432. if (availableProjectsOnly) {
  433. issues = getIssueDAO ().findByNotificationInAvailableProjects (userId, org.itracker.services.util.IssueUtilities.STATUS_CLOSED);
  434. } else {
  435. issues = getIssueDAO ().findByNotification (userId, org.itracker.services.util.IssueUtilities.STATUS_CLOSED);
  436. }
  437. return issues;
  438. }
  439.  
  440. {
  441. final java.util.List < org.itracker.model.Issue > issues;
  442. if (availableProjectsOnly) {
  443. issues = getIssueDAO ().findByStatusLessThanEqualToInAvailableProjects (org.itracker.services.util.IssueUtilities.STATUS_UNASSIGNED);
  444. } else {
  445. issues = getIssueDAO ().findByStatusLessThanEqualTo (org.itracker.services.util.IssueUtilities.STATUS_UNASSIGNED);
  446. }
  447. return issues;
  448. }
  449.  
  450. {
  451. java.util.List < org.itracker.model.Issue > issues = getIssueDAO ().findByStatus (status);
  452. return issues;
  453. }
  454.  
  455. {
  456. java.util.List < org.itracker.model.Issue > issues = getIssueDAO ().findByStatusLessThan (status);
  457. return issues;
  458. }
  459.  
  460. {
  461. java.util.List < org.itracker.model.Issue > issues = getIssueDAO ().findBySeverity (severity);
  462. return issues;
  463. }
  464.  
  465. {
  466. java.util.List < org.itracker.model.Issue > issues = getIssueDAO ().findByProjectAndLowerStatus (projectId, status);
  467. return issues;
  468. }
  469.  
  470. {
  471. org.itracker.model.Issue issue = getIssueDAO ().findByPrimaryKey (issueId);
  472. java.util.List < org.itracker.model.Component > components = issue.getComponents ();
  473. return components;
  474. }
  475.  
  476. {
  477. org.itracker.model.Issue issue = getIssueDAO ().findByPrimaryKey (issueId);
  478. java.util.List < org.itracker.model.Version > versions = issue.getVersions ();
  479. return versions;
  480. }
  481.  
  482. {
  483. org.itracker.model.Issue issue = getIssueDAO ().findByPrimaryKey (issueId);
  484. java.util.List < org.itracker.model.IssueAttachment > attachments = issue.getAttachments ();
  485. return attachments;
  486. }
  487.  
  488. {
  489. org.itracker.model.Project project = getProjectDAO ().findByPrimaryKey (projectId);
  490. org.itracker.model.User creator = getUserDAO ().findByPrimaryKey (userId);
  491. if (project.getStatus () != org.itracker.model.Status.ACTIVE) {
  492. throw new org.itracker.services.exceptions.ProjectException ("Project is not active.");
  493. }
  494. org.itracker.model.IssueActivity activity = new org.itracker.model.IssueActivity (issue, creator, org.itracker.model.IssueActivityType.ISSUE_CREATED);
  495. activity.setDescription (org.itracker.core.resources.ITrackerResources.getString ("itracker.activity.system.createdfor") + " " + creator.getFirstName () + " " + creator.getLastName ());
  496. activity.setIssue (issue);
  497. if (! (createdById == null || createdById.equals (userId))) {
  498. org.itracker.model.User createdBy = getUserDAO ().findByPrimaryKey (createdById);
  499. activity.setUser (createdBy);
  500. org.itracker.model.Notification watchModel = new org.itracker.model.Notification ();
  501. watchModel.setUser (createdBy);
  502. watchModel.setIssue (issue);
  503. watchModel.setRole (org.itracker.model.Notification.Role.CONTRIBUTER);
  504. issue.getNotifications ().add (watchModel);
  505. }
  506. java.util.List < org.itracker.model.IssueActivity > activities = new java.util.ArrayList < org.itracker.model.IssueActivity > ();
  507. activities.add (activity);
  508. issue.setActivities (activities);
  509. issue.setProject (project);
  510. issue.setCreator (creator);
  511. getIssueDAO ().save (issue);
  512. return issue;
  513. }
  514.  
  515. {
  516. java.util.List < org.itracker.model.IssueField > issueFields = issue.getFields ();
  517. {
  518. labeled : if (fields.size () > 0) {
  519. int i = 0;
  520. while (i < fields.size ()) {
  521. labeled : {
  522. org.itracker.model.IssueField field = fields.get (i);
  523. if (issueFields.contains (field)) {
  524. issueFields.remove (field);
  525. }
  526. org.itracker.model.CustomField customField = getCustomFieldDAO ().findByPrimaryKey (fields.get (i).getCustomField ().getId ());
  527. field.setCustomField (customField);
  528. field.setIssue (issue);
  529. issueFields.add (field);
  530. i ++;
  531. }}
  532. }
  533. } issue.setFields (issueFields);
  534. if (save) {
  535. logger.debug ("setIssueFields: save was true");
  536. getIssueDAO ().saveOrUpdate (issue);
  537. }
  538. return true;
  539. }
  540.  
  541. {
  542. org.itracker.model.Issue issue = getIssueDAO ().findByPrimaryKey (issueId);
  543. java.util.List < org.itracker.model.Component > components = new java.util.ArrayList < org.itracker.model.Component > (componentIds.size ());
  544. org.itracker.model.User user = userDAO.findByPrimaryKey (userId);
  545. java.util.Iterator < java.lang.Integer > idIt = componentIds.iterator ();
  546. while (idIt.hasNext ()) {
  547. java.lang.Integer id = (java.lang.Integer) idIt.next ();
  548. org.itracker.model.Component c = getComponentDAO ().findById (id);
  549. components.add (c);
  550. }
  551. setIssueComponents (issue, components, user, true);
  552. return true;
  553. }
  554.  
  555. {
  556. if (issueId == null) {
  557. return;
  558. }
  559. java.util.Collection < org.itracker.model.IssueActivity > activity = getIssueActivityDAO ().findByIssueId (issueId);
  560. java.util.Iterator < org.itracker.model.IssueActivity > iter = activity.iterator ();
  561. while (iter.hasNext ()) {
  562. ((org.itracker.model.IssueActivity) iter.next ()).setNotificationSent (notificationSent);
  563. }
  564. }
  565.  
  566. {
  567. int i = 0;
  568. java.util.Collection < org.itracker.model.IssueActivity > activity = getIssueActivityDAO ().findByIssueId (issueId);
  569. org.itracker.model.IssueActivity [] activityArray = new org.itracker.model.IssueActivity [activity.size ()];
  570. java.util.Iterator < org.itracker.model.IssueActivity > iterator = activity.iterator ();
  571. while (iterator.hasNext ()) {
  572. labeled : {
  573. activityArray [i] = (org.itracker.model.IssueActivity) iterator.next ();
  574. i ++;
  575. }}
  576. return java.util.Arrays.asList (activityArray);
  577. }
  578.  
  579. {
  580. logger.warn ("getAllIssueAttachments: use of deprecated API");
  581. if (logger.isDebugEnabled ()) {
  582. logger.debug ("getAllIssueAttachments: stacktrace was", new java.lang.RuntimeException ());
  583. }
  584. java.util.List < org.itracker.model.IssueAttachment > attachments = getIssueAttachmentDAO ().findAll ();
  585. return attachments;
  586. }
  587.  
  588. {
  589. int i = 0;
  590. org.itracker.model.Issue issue = getIssueDAO ().findByPrimaryKey (issueId);
  591. java.util.Collection < org.itracker.model.IssueAttachment > attachments = issue.getAttachments ();
  592. {
  593. labeled : i = attachments.size ();
  594. } return i;
  595. }
  596.  
  597. {
  598. org.itracker.model.Issue issue = getIssue (issueId);
  599. java.util.Map < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > permissions = getUserDAO ().getUsersMapOfProjectsAndPermissionTypes (user);
  600. return org.itracker.services.util.IssueUtilities.canViewIssue (issue, user.getId (), permissions);
  601. }
  602.  
  603. {
  604. java.util.Map < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > permissions = getUserDAO ().getUsersMapOfProjectsAndPermissionTypes (user);
  605. return org.itracker.services.util.IssueUtilities.canViewIssue (issue, user.getId (), permissions);
  606. }
  607.  
  608. {
  609. java.util.Set < wilos.model.misc.concreteiteration.ConcreteIteration > tmp = new java.util.HashSet < wilos.model.misc.concreteiteration.ConcreteIteration > ();
  610. this.iterationDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_iteration);
  611. java.util.Iterator extfor$iter = _iteration.getConcreteIterations ().iterator ();
  612. while (extfor$iter.hasNext ()) {
  613. wilos.model.misc.concreteiteration.ConcreteIteration bde = (wilos.model.misc.concreteiteration.ConcreteIteration) extfor$iter.next ();
  614. tmp.add (bde);
  615. }
  616. return tmp;
  617. }
  618.  
  619. {
  620. if (_occ > 0) {
  621. this.concreteActivityService.getConcreteActivityDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (_cact);
  622. java.util.ArrayList < wilos.model.misc.concreteiteration.ConcreteIteration > concreteIterationsSisters = new java.util.ArrayList < wilos.model.misc.concreteiteration.ConcreteIteration > ();
  623. int nbExistingConcreteIterationChildren = 0;
  624. java.util.Iterator extfor$iter = _cact.getConcreteBreakdownElements ().iterator ();
  625. while (extfor$iter.hasNext ()) {
  626. wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement tmp = (wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement) extfor$iter.next ();
  627. if (tmp instanceof wilos.model.misc.concreteiteration.ConcreteIteration) {
  628. if (((wilos.model.misc.concreteiteration.ConcreteIteration) tmp).getIteration ().getId ().equals (_iteration.getId ())) {
  629. nbExistingConcreteIterationChildren ++;
  630. concreteIterationsSisters.add ((wilos.model.misc.concreteiteration.ConcreteIteration) tmp);
  631. }
  632. }
  633. }
  634. int nbConcreteIterationSisters = nbExistingConcreteIterationChildren;
  635. int i = nbExistingConcreteIterationChildren + 1;
  636. while (i <= nbExistingConcreteIterationChildren + _occ) {
  637. labeled : {
  638. wilos.model.misc.concreteiteration.ConcreteIteration ci = new wilos.model.misc.concreteiteration.ConcreteIteration ();
  639. java.util.List < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.ArrayList < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  640. bdes.addAll (this.activityService.getAllBreakdownElements (_iteration));
  641. if (_occ != 1 || nbExistingConcreteIterationChildren != 0) {
  642. if (_iteration.getPresentationName ().equals ("")) ci.setConcreteName (_iteration.getName () + "#" + i);
  643. else ci.setConcreteName (_iteration.getPresentationName () + "#" + i);
  644.  
  645. } else if (_iteration.getPresentationName ().equals ("")) {
  646. ci.setConcreteName (_iteration.getName ());
  647. } else {
  648. ci.setConcreteName (_iteration.getPresentationName ());
  649. }
  650.  
  651. this.concreteIterationSet (ci, _iteration, _project, i, _cact, _dispOrd);
  652. this.concreteIterationDao.saveOrUpdateConcreteIteration (ci);
  653. this.instanciationElement (bdes, _occ, _list, _project, _isInstanciated, ci);
  654. this.concreteIterationDao.saveOrUpdateConcreteIteration (ci);
  655. if (nbConcreteIterationSisters != 0) {
  656. wilos.model.misc.concreteiteration.ConcreteIteration lastConcreteIteration = null;
  657. java.util.Iterator extfor$iter$1 = concreteIterationsSisters.iterator ();
  658. while (extfor$iter$1.hasNext ()) {
  659. wilos.model.misc.concreteiteration.ConcreteIteration tmp = (wilos.model.misc.concreteiteration.ConcreteIteration) extfor$iter$1.next ();
  660. if (lastConcreteIteration == null || tmp.getInstanciationOrder () > lastConcreteIteration.getInstanciationOrder ()) {
  661. lastConcreteIteration = tmp;
  662. }
  663. }
  664. this.concreteWorkOrderService.saveConcreteWorkOrder (lastConcreteIteration.getId (), ci.getId (), wilos.utils.Constantes.WorkOrderType.FINISH_TO_START, _project.getId ());
  665. }
  666. ++ nbConcreteIterationSisters;
  667. concreteIterationsSisters.add (ci);
  668. i ++;
  669. }}
  670. }
  671. }
  672.  
  673. {
  674. if (_occ > 0) {
  675. java.util.Iterator extfor$iter = _cacts.iterator ();
  676. while (extfor$iter.hasNext ()) {
  677. wilos.model.misc.concreteactivity.ConcreteActivity tmp = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  678. java.lang.String strDispOrd = this.concreteActivityService.getMaxDisplayOrder (tmp);
  679. int dispOrd = java.lang.Integer.parseInt (strDispOrd) + 1;
  680. this.iterationInstanciation (_project, _it, tmp, _list, _occ, true, dispOrd);
  681. if (tmp instanceof wilos.model.misc.project.Project) {
  682. wilos.model.misc.project.Project pj = (wilos.model.misc.project.Project) tmp;
  683. this.projectDao.saveOrUpdateProject (pj);
  684. } else if (tmp instanceof wilos.model.misc.concretephase.ConcretePhase) {
  685. wilos.model.misc.concretephase.ConcretePhase cph = (wilos.model.misc.concretephase.ConcretePhase) tmp;
  686. this.concretePhaseDao.saveOrUpdateConcretePhase (cph);
  687. } else if (tmp instanceof wilos.model.misc.concreteiteration.ConcreteIteration) {
  688. wilos.model.misc.concreteiteration.ConcreteIteration cit = (wilos.model.misc.concreteiteration.ConcreteIteration) tmp;
  689. this.concreteIterationDao.saveOrUpdateConcreteIteration (cit);
  690. }
  691.  
  692. }
  693. } else {
  694. java.util.Set < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.HashSet < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  695. bdes.addAll (this.activityService.getAllBreakdownElements (_it));
  696. java.util.Set < wilos.model.misc.concreteactivity.ConcreteActivity > cacts = new java.util.HashSet < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  697. cacts.addAll (this.getAllConcreteIterationsForAProject (_it, _project));
  698. java.util.Iterator extfor$iter$1 = bdes.iterator ();
  699. while (extfor$iter$1.hasNext ()) {
  700. wilos.model.spem2.breakdownelement.BreakdownElement bde = (wilos.model.spem2.breakdownelement.BreakdownElement) extfor$iter$1.next ();
  701. if (bde instanceof wilos.model.spem2.iteration.Iteration) {
  702. wilos.model.spem2.iteration.Iteration it = (wilos.model.spem2.iteration.Iteration) bde;
  703. int occ = this.giveNbOccurences (it.getId (), _list, true);
  704. this.iterationUpdate (_project, it, cacts, _list, occ);
  705. } else if (bde instanceof wilos.model.spem2.activity.Activity) {
  706. wilos.model.spem2.activity.Activity act = (wilos.model.spem2.activity.Activity) bde;
  707. int occ = this.giveNbOccurences (act.getId (), _list, true);
  708. this.activityService.activityUpdate (_project, act, cacts, _list, occ);
  709. } else if (bde instanceof wilos.model.spem2.task.TaskDescriptor) {
  710. wilos.model.spem2.task.TaskDescriptor td = (wilos.model.spem2.task.TaskDescriptor) bde;
  711. int occ = this.giveNbOccurences (td.getId (), _list, true);
  712. this.taskDescriptorService.taskDescriptorUpdate (_project, td, cacts, occ);
  713. }
  714.  
  715. }
  716. }
  717. }
  718.  
  719. {
  720. java.util.List < org.itracker.model.Project > projects = projectService.getAllProjects ();
  721. java.util.ArrayList < org.itracker.model.Project > projects_tmp = new java.util.ArrayList < org.itracker.model.Project > (projects);
  722. java.util.Iterator < org.itracker.model.Project > projectIt = projects.iterator ();
  723. while (projectIt.hasNext ()) {
  724. org.itracker.model.Project project = (org.itracker.model.Project) projectIt.next ();
  725. if (! org.itracker.services.util.UserUtilities.hasPermission (permissions, project.getId (), permissionFlags)) {
  726. projects_tmp.remove (project);
  727. }
  728. }
  729. projects = projects_tmp;
  730. java.util.Collections.sort (projects, new org.itracker.model.Project.ProjectComparator ());
  731. java.util.ArrayList < org.itracker.web.ptos.ProjectPTO > ptos = new java.util.ArrayList < org.itracker.web.ptos.ProjectPTO > (projects_tmp.size ());
  732. projectIt = projects.iterator ();
  733. while (projectIt.hasNext ()) {
  734. org.itracker.model.Project project = projectIt.next ();
  735. ptos.add (createProjectPTO (project, projectService, permissions));
  736. }
  737. return ptos;
  738. }
  739.  
  740. {
  741. final java.util.Map < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > permissions = org.itracker.web.util.RequestHelper.getUserPermissions (request.getSession ());
  742. org.itracker.services.ProjectService projectService = this.getITrackerServices ().getProjectService ();
  743. request.setAttribute ("projects", getPTOs (projectService, new int [] {org.itracker.services.util.UserUtilities.PERMISSION_VIEW_ALL, org.itracker.services.util.UserUtilities.PERMISSION_VIEW_USERS}, permissions));
  744. java.lang.String pageTitleKey = "itracker.web.listprojects.title";
  745. java.lang.String pageTitleArg = "";
  746. request.setAttribute ("pageTitleKey", pageTitleKey);
  747. request.setAttribute ("pageTitleArg", pageTitleArg);
  748. log.info ("ListProjectsAction: Forward: listprojects");
  749. return mapping.findForward ("list_projects");
  750. }
  751.  
  752. {
  753. org.apache.struts.action.ActionMessages errors = new org.apache.struts.action.ActionMessages ();
  754. request.setAttribute ("pageTitleKey", PAGE_TITLE_KEY);
  755. request.setAttribute ("pageTitleArg", "itracker.web.generic.unknown");
  756. try {
  757. org.itracker.services.IssueService issueService = getITrackerServices ().getIssueService ();
  758. org.itracker.services.ProjectService projectService = getITrackerServices ().getProjectService ();
  759. java.lang.Integer issueId = java.lang.Integer.valueOf (request.getParameter ("id") == null ? "-1" : request.getParameter ("id"));
  760. org.itracker.model.Issue issue = issueService.getIssue (issueId);
  761. if (issue == null) {
  762. errors.add (org.apache.struts.action.ActionMessages.GLOBAL_MESSAGE, new org.apache.struts.action.ActionMessage ("itracker.web.error.invalidissue"));
  763. } else {
  764. request.setAttribute ("pageTitleArg", issue.getId ());
  765. if (errors.isEmpty ()) {
  766. if (! isPermissionGranted (request, issue)) {
  767. return mapping.findForward (UNAUTHORIZED_PAGE);
  768. }
  769. java.util.List < org.itracker.model.Project > projects = projectService.getAllAvailableProjects ();
  770. if (projects.size () == 0) {
  771. return mapping.findForward (UNAUTHORIZED_PAGE);
  772. }
  773. java.util.List < org.itracker.model.Project > availableProjects = getAvailableProjects (request, projects, issue);
  774. if (availableProjects.size () == 0) {
  775. errors.add (org.apache.struts.action.ActionMessages.GLOBAL_MESSAGE, new org.apache.struts.action.ActionMessage ("itracker.web.error.noprojects"));
  776. }
  777. if (errors.isEmpty ()) {
  778. setupMoveIssueForm (request, form, issue, availableProjects);
  779. return mapping.getInputForward ();
  780. }
  781. }
  782. }
  783. } catch (java.lang.RuntimeException e) {
  784. log.error ("Exception while creating move issue form.", e);
  785. errors.add (org.apache.struts.action.ActionMessages.GLOBAL_MESSAGE, new org.apache.struts.action.ActionMessage ("itracker.web.error.system"));
  786. }
  787. if (! errors.isEmpty ()) {
  788. saveErrors (request, errors);
  789. }
  790. return mapping.findForward ("error");
  791. }
  792.  
  793. {
  794. java.util.Map < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > userPermissions = getUserPermissions (request.getSession ());
  795. if (! org.itracker.services.util.UserUtilities.hasPermission (userPermissions, issue.getProject ().getId (), org.itracker.services.util.UserUtilities.PERMISSION_EDIT)) {
  796. log.debug ("Unauthorized user requested access to move issue for issue " + issue.getId ());
  797. return false;
  798. }
  799. return true;
  800. }
  801.  
  802. {
  803. try {
  804. if (logger.isDebugEnabled ()) {
  805. logger.debug (("handleIssueNotificationhandleIssueNotification: running as t" + "hread, called with issue: ") + issue + ", type: " + type + "url: " + url + ", receipients: " + (null == receipients ? "<null>" : java.lang.String.valueOf (java.util.Arrays.asList (receipients))) + ", lastModifiedDays: " + lastModifiedDays);
  806. }
  807. final java.lang.Integer notModifiedSince;
  808. if (lastModifiedDays == null || lastModifiedDays.intValue () < 0) {
  809. notModifiedSince = java.lang.Integer.valueOf (org.itracker.web.scheduler.tasks.ReminderNotification.DEFAULT_ISSUE_AGE);
  810. } else {
  811. notModifiedSince = lastModifiedDays;
  812. }
  813. try {
  814. if (logger.isDebugEnabled ()) {
  815. logger.debug (("handleIssueNotificationhandleIssueNotification.run: running " + "as thread, called with issue: ") + issue + ", type: " + type + "url: " + url + ", receipients: " + (null == receipients ? "<null>" : java.lang.String.valueOf (java.util.Arrays.asList (receipients))) + ", notModifiedSince: " + notModifiedSince);
  816. }
  817. final java.util.List < org.itracker.model.Notification > notifications;
  818. if (issue == null) {
  819. logger.warn (("handleIssueNotification: issue was null. Notification will n" + "ot be handled"));
  820. return;
  821. }
  822. java.util.Map < javax.mail.internet.InternetAddress, java.util.Locale > localeMapping = null;
  823. if (receipients == null) {
  824. notifications = this.getIssueNotifications (issue);
  825. localeMapping = new java.util.Hashtable < javax.mail.internet.InternetAddress, java.util.Locale > (notifications.size ());
  826. java.util.Iterator < org.itracker.model.Notification > it = notifications.iterator ();
  827. org.itracker.model.User currentUser;
  828. while (it.hasNext ()) {
  829. currentUser = it.next ().getUser ();
  830. if (null != currentUser && null != currentUser.getEmailAddress () && null != currentUser.getEmail () && ! localeMapping.keySet ().contains (currentUser.getEmailAddress ())) {
  831. try {
  832. localeMapping.put (currentUser.getEmailAddress (), org.itracker.core.resources.ITrackerResources.getLocale (currentUser.getPreferences ().getUserLocale ()));
  833. } catch (java.lang.RuntimeException re) {
  834. localeMapping.put (currentUser.getEmailAddress (), org.itracker.core.resources.ITrackerResources.getLocale ());
  835. }
  836. }
  837. }
  838. } else {
  839. localeMapping = new java.util.Hashtable < javax.mail.internet.InternetAddress, java.util.Locale > (1);
  840. java.util.Locale locale = org.itracker.core.resources.ITrackerResources.getLocale ();
  841. java.util.Iterator < javax.mail.internet.InternetAddress > it = java.util.Arrays.asList (receipients).iterator ();
  842. while (it.hasNext ()) {
  843. javax.mail.internet.InternetAddress internetAddress = (javax.mail.internet.InternetAddress) it.next ();
  844. localeMapping.put (internetAddress, locale);
  845. }
  846. }
  847. this.handleNotification (issue, type, notModifiedSince, localeMapping, url);
  848. } catch (java.lang.Exception e) {
  849. logger.error ("run: failed to process notification", e);
  850. }
  851. } catch (java.lang.Exception e) {
  852. logger.error (("handleIssueNotification: unexpected exception caught, throwi" + "ng runtime exception"), e);
  853. throw new java.lang.RuntimeException (e);
  854. }
  855. }
  856.  
  857. {
  858. if (logger.isDebugEnabled ()) {
  859. logger.debug ("updateIssueActivityNotification: called with " + issue + ", notificationSent: " + notificationSent);
  860. }
  861. java.util.Collection < org.itracker.model.IssueActivity > activity = getIssueActivityDao ().findByIssueId (issue.getId ());
  862. java.util.Iterator < org.itracker.model.IssueActivity > iter = activity.iterator ();
  863. while (iter.hasNext ()) {
  864. ((org.itracker.model.IssueActivity) iter.next ()).setNotificationSent (notificationSent);
  865. }
  866. }
  867.  
  868. {
  869. this.concreteRoleDescriptorsMap = new java.util.HashMap < java.lang.String, java.lang.Boolean > ();
  870. java.util.List < wilos.model.misc.concreterole.ConcreteRoleDescriptor > concreteRoleDescriptorsForAParticipant = new java.util.ArrayList < wilos.model.misc.concreterole.ConcreteRoleDescriptor > ();
  871. java.util.Iterator extfor$iter = concreteRoleDescriptorsForAParticipant.iterator ();
  872. while (extfor$iter.hasNext ()) {
  873. wilos.model.misc.concreterole.ConcreteRoleDescriptor concreteRoleDescriptor = (wilos.model.misc.concreterole.ConcreteRoleDescriptor) extfor$iter.next ();
  874. this.concreteRoleDescriptorsMap.put (concreteRoleDescriptor.getConcreteName (), true);
  875. }
  876. return this.concreteRoleDescriptorsMap;
  877. }
  878.  
  879. {
  880. this.participantDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_participant);
  881. java.util.HashMap < wilos.model.misc.project.Project, java.lang.Boolean > affectedProjectList = new java.util.HashMap < wilos.model.misc.project.Project, java.lang.Boolean > ();
  882. java.util.HashSet < wilos.model.misc.project.Project > allProjectList = new java.util.HashSet < wilos.model.misc.project.Project > ();
  883. allProjectList = (java.util.HashSet < wilos.model.misc.project.Project >) this.projectService.getUnfinishedProjects ();
  884. java.util.Iterator extfor$iter = allProjectList.iterator ();
  885. while (extfor$iter.hasNext ()) {
  886. wilos.model.misc.project.Project p = (wilos.model.misc.project.Project) extfor$iter.next ();
  887. java.util.Set < wilos.model.misc.project.Project > tmp = _participant.getAffectedProjectList ();
  888. if (tmp.contains (p)) {
  889. affectedProjectList.put (p, true);
  890. } else {
  891. affectedProjectList.put (p, false);
  892. }
  893. }
  894. return affectedProjectList;
  895. }
  896.  
  897. {
  898. java.util.Set < wilos.model.misc.concretephase.ConcretePhase > tmp = new java.util.HashSet < wilos.model.misc.concretephase.ConcretePhase > ();
  899. this.phaseDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_phase);
  900. java.util.Iterator extfor$iter = _phase.getConcretePhases ().iterator ();
  901. while (extfor$iter.hasNext ()) {
  902. wilos.model.misc.concretephase.ConcretePhase bde = (wilos.model.misc.concretephase.ConcretePhase) extfor$iter.next ();
  903. tmp.add (bde);
  904. }
  905. return tmp;
  906. }
  907.  
  908. {
  909. if (_occ > 0) {
  910. this.concreteActivityService.getConcreteActivityDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (_cact);
  911. java.util.ArrayList < wilos.model.misc.concretephase.ConcretePhase > concretePhasesSisters = new java.util.ArrayList < wilos.model.misc.concretephase.ConcretePhase > ();
  912. int nbExistingConcretePhaseChildren = 0;
  913. java.util.Iterator extfor$iter = _cact.getConcreteBreakdownElements ().iterator ();
  914. while (extfor$iter.hasNext ()) {
  915. wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement tmp = (wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement) extfor$iter.next ();
  916. if (tmp instanceof wilos.model.misc.concretephase.ConcretePhase) {
  917. if (((wilos.model.misc.concretephase.ConcretePhase) tmp).getPhase ().getId ().equals (_phase.getId ())) {
  918. nbExistingConcretePhaseChildren ++;
  919. concretePhasesSisters.add ((wilos.model.misc.concretephase.ConcretePhase) tmp);
  920. }
  921. }
  922. }
  923. int nbConcretePhaseSisters = nbExistingConcretePhaseChildren;
  924. int i = nbExistingConcretePhaseChildren + 1;
  925. while (i <= nbExistingConcretePhaseChildren + _occ) {
  926. labeled : {
  927. wilos.model.misc.concretephase.ConcretePhase cp = new wilos.model.misc.concretephase.ConcretePhase ();
  928. java.util.Set < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.HashSet < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  929. bdes.addAll (this.activityService.getAllBreakdownElements (_phase));
  930. if (_occ != 1 || nbExistingConcretePhaseChildren != 0) {
  931. if (_phase.getPresentationName ().equals ("")) cp.setConcreteName (_phase.getName () + "#" + i);
  932. else cp.setConcreteName (_phase.getPresentationName () + "#" + i);
  933.  
  934. } else {
  935. if (_phase.getPresentationName ().equals ("")) cp.setConcreteName (_phase.getName ());
  936. else cp.setConcreteName (_phase.getPresentationName ());
  937.  
  938. }
  939. cp.addPhase (_phase);
  940. cp.setProject (_project);
  941. cp.setBreakdownElement (_phase);
  942. cp.setInstanciationOrder (i);
  943. cp.setWorkBreakdownElement (_phase);
  944. cp.setActivity (_phase);
  945. _cact.setConcreteBreakdownElements (this.concreteActivityService.getConcreteBreakdownElements (_cact));
  946. cp.addSuperConcreteActivity (_cact);
  947. cp.setDisplayOrder (cp.getSuperConcreteActivity ().getDisplayOrder () + java.lang.Integer.toString (_dispOrd + i));
  948. this.concretePhaseDao.saveOrUpdateConcretePhase (cp);
  949. this.peruseBreakdownElementList (bdes, _occ, _isInstanciated, _project, _phase, _list, cp);
  950. this.concretePhaseDao.saveOrUpdateConcretePhase (cp);
  951. if (nbConcretePhaseSisters != 0) {
  952. wilos.model.misc.concretephase.ConcretePhase lastConcretePhase = null;
  953. java.util.Iterator extfor$iter$1 = concretePhasesSisters.iterator ();
  954. while (extfor$iter$1.hasNext ()) {
  955. wilos.model.misc.concretephase.ConcretePhase tmp = (wilos.model.misc.concretephase.ConcretePhase) extfor$iter$1.next ();
  956. if (lastConcretePhase == null || tmp.getInstanciationOrder () > lastConcretePhase.getInstanciationOrder ()) {
  957. lastConcretePhase = tmp;
  958. }
  959. }
  960. this.concreteWorkOrderService.saveConcreteWorkOrder (lastConcretePhase.getId (), cp.getId (), wilos.utils.Constantes.WorkOrderType.FINISH_TO_START, _project.getId ());
  961. }
  962. ++ nbConcretePhaseSisters;
  963. concretePhasesSisters.add (cp);
  964. i ++;
  965. }}
  966. }
  967. }
  968.  
  969. {
  970. if (_occ > 0) {
  971. java.util.Iterator extfor$iter = _cacts.iterator ();
  972. while (extfor$iter.hasNext ()) {
  973. wilos.model.misc.concreteactivity.ConcreteActivity tmp = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  974. java.lang.String strDispOrd = this.concreteActivityService.getMaxDisplayOrder (tmp);
  975. int dispOrd = java.lang.Integer.parseInt (strDispOrd) + 1;
  976. this.phaseInstanciation (_project, _phase, tmp, _list, _occ, true, dispOrd);
  977. if (tmp instanceof wilos.model.misc.project.Project) {
  978. wilos.model.misc.project.Project pj = (wilos.model.misc.project.Project) tmp;
  979. this.projectDao.saveOrUpdateProject (pj);
  980. } else if (tmp instanceof wilos.model.misc.concretephase.ConcretePhase) {
  981. wilos.model.misc.concretephase.ConcretePhase cph = (wilos.model.misc.concretephase.ConcretePhase) tmp;
  982. this.concretePhaseDao.saveOrUpdateConcretePhase (cph);
  983. }
  984.  
  985. }
  986. } else {
  987. java.util.Set < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = new java.util.HashSet < wilos.model.spem2.breakdownelement.BreakdownElement > ();
  988. bdes.addAll (this.activityService.getAllBreakdownElements (_phase));
  989. java.util.Set < wilos.model.misc.concreteactivity.ConcreteActivity > cacts = new java.util.HashSet < wilos.model.misc.concreteactivity.ConcreteActivity > ();
  990. cacts.addAll (this.getAllConcretePhasesForAProject (_phase, _project));
  991. this.UpdateElementOfBreakdownElementList (bdes, _project, _phase, cacts, _list);
  992. }
  993. }
  994.  
  995. {
  996. java.util.List < javax.faces.model.SelectItem > processesList = new java.util.ArrayList < javax.faces.model.SelectItem > ();
  997. processesList.add (new javax.faces.model.SelectItem ("default", wilos.resources.LocaleBean.getText ("component.combobox.processchoice.defaultlabel")));
  998. java.util.List < wilos.model.spem2.process.Process > processes = this.processService.getProcessDao ().getAllProcesses ();
  999. java.util.Iterator extfor$iter = processes.iterator ();
  1000. while (extfor$iter.hasNext ()) {
  1001. wilos.model.spem2.process.Process process = (wilos.model.spem2.process.Process) extfor$iter.next ();
  1002. processesList.add (new javax.faces.model.SelectItem (process.getId (), process.getPresentationName ()));
  1003. }
  1004. return processesList;
  1005. }
  1006.  
  1007. {
  1008. java.util.Set < wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement > tmp = new java.util.HashSet < wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement > ();
  1009. this.getProjectDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (_project);
  1010. this.getProjectDao ().getSessionFactory ().getCurrentSession ().refresh (_project);
  1011. java.util.Iterator extfor$iter = _project.getConcreteBreakdownElements ().iterator ();
  1012. while (extfor$iter.hasNext ()) {
  1013. wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement element = (wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement) extfor$iter.next ();
  1014. tmp.add (element);
  1015. }
  1016. return tmp;
  1017. }
  1018.  
  1019. {
  1020. java.util.List < wilos.model.misc.project.Project > projectList = new java.util.ArrayList < wilos.model.misc.project.Project > ();
  1021. projectList = this.projectDao.getAllProjects ();
  1022. return projectList;
  1023. }
  1024.  
  1025. {
  1026. this.processService.getProcessDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (_process);
  1027. wilos.model.misc.project.Project project = this.getProject ((java.lang.String) wilos.presentation.web.utils.WebSessionService.getAttribute (wilos.presentation.web.utils.WebSessionService.PROJECT_ID));
  1028. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > lines = new java.util.ArrayList < java.util.HashMap < java.lang.String, java.lang.Object > > ();
  1029. java.lang.String path = _process.getPresentationName ();
  1030. return this.giveRoleDescriptorsPathName (project, _process, path, _roleName, lines);
  1031. }
  1032.  
  1033. {
  1034. java.util.Set < wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor > tmp = new java.util.HashSet < wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor > ();
  1035. this.activityDao.getSessionFactory ().getCurrentSession ().saveOrUpdate (_cact);
  1036. java.util.Iterator extfor$iter = _cact.getConcreteBreakdownElements ().iterator ();
  1037. while (extfor$iter.hasNext ()) {
  1038. wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement element = (wilos.model.misc.concretebreakdownelement.ConcreteBreakdownElement) extfor$iter.next ();
  1039. if (element instanceof wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor) {
  1040. wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor cwpd = (wilos.model.misc.concreteworkproduct.ConcreteWorkProductDescriptor) element;
  1041. tmp.add (cwpd);
  1042. } else if (! (element instanceof wilos.model.misc.concretetask.ConcreteTaskDescriptor) && ! (element instanceof wilos.model.misc.concreterole.ConcreteRoleDescriptor) && ! (element instanceof wilos.model.misc.concretemilestone.ConcreteMilestone)) {
  1043. wilos.model.misc.concreteactivity.ConcreteActivity cact = (wilos.model.misc.concreteactivity.ConcreteActivity) element;
  1044. tmp.addAll (this.getConcreteWorkProductDescriptorsFromProject (cact));
  1045. }
  1046.  
  1047. }
  1048. return tmp;
  1049. }
  1050.  
  1051. {
  1052. this.processService.getProcessDao ().getSessionFactory ().getCurrentSession ().saveOrUpdate (_process);
  1053. wilos.model.misc.project.Project project = this.getProject ((java.lang.String) wilos.presentation.web.utils.WebSessionService.getAttribute (wilos.presentation.web.utils.WebSessionService.PROJECT_ID));
  1054. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > lines = new java.util.ArrayList < java.util.HashMap < java.lang.String, java.lang.Object > > ();
  1055. java.lang.String path = _process.getPresentationName ();
  1056. return this.giveWorkProductDescriptorsPathName (project, _process, path, _workProductName, lines);
  1057. }
  1058.  
  1059. {
  1060. java.util.List role = this.getHibernateTemplate ().loadAll (null);
  1061. return role;
  1062. }
  1063.  
  1064. {
  1065. java.util.List < org.itracker.model.User > users = userDAO.findAll ();
  1066. return users;
  1067. }
  1068.  
  1069. {
  1070. java.util.List < org.itracker.model.User > users = userDAO.findActive ();
  1071. return users;
  1072. }
  1073.  
  1074. {
  1075. java.util.List < org.itracker.model.User > superUsers = userDAO.findSuperUsers ();
  1076. return superUsers;
  1077. }
  1078.  
  1079. {
  1080. java.util.List < org.itracker.model.Permission > permissions = permissionDAO.findByUserId (user.getId ());
  1081. return permissions;
  1082. }
  1083.  
  1084. {
  1085. java.util.List < org.itracker.model.Permission > permissions = new java.util.ArrayList < org.itracker.model.Permission > ();
  1086. org.itracker.model.User user = getUser (userId);
  1087. if (user != null) {
  1088. try {
  1089. org.itracker.services.authentication.PluggableAuthenticator authenticator = (org.itracker.services.authentication.PluggableAuthenticator) authenticatorClass.newInstance ();
  1090. if (authenticator != null) {
  1091. java.util.HashMap < java.lang.String, java.lang.Object > values = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  1092. values.put ("userService", this);
  1093. values.put ("configurationService", configurationService);
  1094. authenticator.initialize (values);
  1095. permissions = authenticator.getUserPermissions (user, org.itracker.services.util.AuthenticationConstants.REQ_SOURCE_UNKNOWN);
  1096. }
  1097. logger.debug ("Found " + permissions.size () + " permissions for user " + user.getLogin ());
  1098. } catch (java.lang.IllegalAccessException ex) {
  1099. throw new java.lang.RuntimeException ("Authenticator class " + authenticatorClassName + " can not be instantiated.", ex);
  1100. } catch (java.lang.InstantiationException ex) {
  1101. throw new java.lang.RuntimeException ("Authenticator class " + authenticatorClassName + " can not be instantiated.", ex);
  1102. } catch (java.lang.ClassCastException ex) {
  1103. throw new java.lang.RuntimeException ("Authenticator class " + authenticatorClassName + " does not extend the PluggableAuthenticator class.", ex);
  1104. } catch (org.itracker.services.exceptions.AuthenticatorException ex) {
  1105. throw new java.lang.RuntimeException ("Authenticator exception: ", ex);
  1106. }
  1107. }
  1108. return permissions;
  1109. }
  1110.  
  1111. {
  1112. boolean hasChanges = false;
  1113. java.util.TreeSet < org.itracker.model.Permission > pSet = new java.util.TreeSet < org.itracker.model.Permission > (org.itracker.model.Permission.PERMISSION_PROPERTIES_COMPARATOR);
  1114. pSet.addAll (newPermissions);
  1115. org.itracker.model.User usermodel = this.getUser (userId);
  1116. java.util.Set < org.itracker.model.Permission > current = new java.util.TreeSet < org.itracker.model.Permission > (org.itracker.model.Permission.PERMISSION_PROPERTIES_COMPARATOR);
  1117. current.addAll (usermodel.getPermissions ());
  1118. java.util.Set < org.itracker.model.Permission > remove = new java.util.TreeSet < org.itracker.model.Permission > (org.itracker.model.Permission.PERMISSION_PROPERTIES_COMPARATOR);
  1119. remove.addAll (current);
  1120. remove.removeAll (pSet);
  1121. java.util.Set < org.itracker.model.Permission > add = new java.util.TreeSet < org.itracker.model.Permission > (org.itracker.model.Permission.PERMISSION_PROPERTIES_COMPARATOR);
  1122. add.addAll (pSet);
  1123. add.removeAll (current);
  1124. org.itracker.model.Permission p;
  1125. java.util.Iterator < org.itracker.model.Permission > pIt = remove.iterator ();
  1126. boolean skip_0 = false;
  1127. while (pIt.hasNext ()) {
  1128. labeled : {
  1129. skip_0 = false;
  1130. p = find (usermodel.getPermissions (), (org.itracker.model.Permission) pIt.next ());
  1131. if (! skip_0) if (null == p) {
  1132. skip_0 = true;
  1133. }
  1134.  
  1135. if (! skip_0) if (usermodel.getPermissions ().contains (p)) {
  1136. if (! skip_0) usermodel.getPermissions ().remove (p);
  1137.  
  1138. if (! skip_0) permissionDAO.delete (p);
  1139.  
  1140. if (! skip_0) hasChanges = true;
  1141.  
  1142. }
  1143.  
  1144. }}
  1145. pIt = add.iterator ();
  1146. while (pIt.hasNext ()) {
  1147. labeled : {
  1148. p = pIt.next ();
  1149. if (null == find (usermodel.getPermissions (), p) && ! usermodel.getPermissions ().contains (p)) {
  1150. p.setUser (usermodel);
  1151. usermodel.getPermissions ().add (p);
  1152. permissionDAO.save (p);
  1153. hasChanges = true;
  1154. }
  1155. }}
  1156. if (hasChanges) {
  1157. userDAO.saveOrUpdate (usermodel);
  1158. }
  1159. return hasChanges;
  1160. }
  1161.  
  1162. {
  1163. java.util.Map < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > permissionsMap = new java.util.HashMap < java.lang.Integer, java.util.Set < org.itracker.model.PermissionType > > ();
  1164. if (user == null) {
  1165. return permissionsMap;
  1166. }
  1167. java.util.List < org.itracker.model.Permission > permissionList = new java.util.ArrayList < org.itracker.model.Permission > ();
  1168. try {
  1169. org.itracker.services.authentication.PluggableAuthenticator authenticator = (org.itracker.services.authentication.PluggableAuthenticator) authenticatorClass.newInstance ();
  1170. if (authenticator != null) {
  1171. java.util.HashMap < java.lang.String, java.lang.Object > values = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  1172. values.put ("userService", this);
  1173. values.put ("configurationService", configurationService);
  1174. authenticator.initialize (values);
  1175. permissionList = authenticator.getUserPermissions (user, reqSource == 0 ? org.itracker.services.util.AuthenticationConstants.REQ_SOURCE_UNKNOWN : reqSource);
  1176. }
  1177. logger.debug ("Found " + permissionList.size () + " permissions for user " + user.getLogin ());
  1178. } catch (java.lang.IllegalAccessException iae) {
  1179. logger.error ("Authenticator class " + authenticatorClassName + " can not be instantiated.");
  1180. } catch (java.lang.InstantiationException ie) {
  1181. logger.error ("Authenticator class " + authenticatorClassName + " can not be instantiated.");
  1182. } catch (java.lang.ClassCastException cce) {
  1183. logger.error ("Authenticator class " + authenticatorClassName + " does not extend the PluggableAuthenticator class.");
  1184. } catch (org.itracker.services.exceptions.AuthenticatorException ae) {
  1185. logger.error ("Authenticator exception: " + ae.getMessage ());
  1186. logger.debug ("Authenticator exception: ", ae);
  1187. }
  1188. permissionsMap = org.itracker.services.util.UserUtilities.mapPermissionTypesByProjectId (permissionList);
  1189. {
  1190. labeled : if (allowSelfRegister) {
  1191. java.util.List < org.itracker.model.Project > projects = projectService.getAllProjects ();
  1192. int i = 0;
  1193. while (i < projects.size ()) {
  1194. labeled : {
  1195. org.itracker.model.Project project = projects.get (i);
  1196. if (project.getOptions () >= org.itracker.services.util.ProjectUtilities.OPTION_ALLOW_SELF_REGISTERED_CREATE) {
  1197. java.util.Set < org.itracker.model.PermissionType > projectPermissions = permissionsMap.get (project.getId ());
  1198. if (projectPermissions == null) {
  1199. projectPermissions = new java.util.HashSet < org.itracker.model.PermissionType > ();
  1200. permissionsMap.put (project.getId (), projectPermissions);
  1201. }
  1202. if (org.itracker.services.util.ProjectUtilities.hasOption (org.itracker.services.util.ProjectUtilities.OPTION_ALLOW_SELF_REGISTERED_CREATE, project.getOptions ())) {
  1203. projectPermissions.add (org.itracker.model.PermissionType.ISSUE_VIEW_USERS);
  1204. projectPermissions.add (org.itracker.model.PermissionType.ISSUE_CREATE);
  1205. }
  1206. if (org.itracker.services.util.ProjectUtilities.hasOption (org.itracker.services.util.ProjectUtilities.OPTION_ALLOW_SELF_REGISTERED_VIEW_ALL, project.getOptions ())) {
  1207. projectPermissions.add (org.itracker.model.PermissionType.ISSUE_VIEW_ALL);
  1208. }
  1209. }
  1210. i ++;
  1211. }}
  1212. }
  1213. } return permissionsMap;
  1214. }
  1215.  
  1216. {
  1217. java.util.List < org.itracker.model.User > userList = new java.util.ArrayList < org.itracker.model.User > ();
  1218. try {
  1219. org.itracker.services.authentication.PluggableAuthenticator authenticator = (org.itracker.services.authentication.PluggableAuthenticator) authenticatorClass.newInstance ();
  1220. if (authenticator != null) {
  1221. java.util.Map < java.lang.String, java.lang.Object > values = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  1222. values.put ("userService", this);
  1223. values.put ("configurationService", configurationService);
  1224. authenticator.initialize (values);
  1225. userList = authenticator.getUsersWithProjectPermission (projectId, permissionTypes, requireAll, activeOnly, org.itracker.services.util.AuthenticationConstants.REQ_SOURCE_UNKNOWN);
  1226. }
  1227. if (logger.isDebugEnabled ()) {
  1228. logger.debug ("getUsersWithProjectPermission: Found " + userList.size () + " users with project " + projectId + " permissions " + java.util.Arrays.toString (permissionTypes) + (requireAll ? "[AllReq," : "[AnyReq,") + (activeOnly ? "ActiveUsersOnly]" : "AllUsers]"));
  1229. }
  1230. } catch (java.lang.IllegalAccessException iae) {
  1231. logger.error ("getUsersWithProjectPermission: Authenticator class " + authenticatorClassName + " can not be instantiated.", iae);
  1232. } catch (java.lang.InstantiationException ie) {
  1233. logger.error ("getUsersWithProjectPermission: Authenticator class " + authenticatorClassName + " can not be instantiated.", ie);
  1234. } catch (java.lang.ClassCastException cce) {
  1235. logger.error ("getUsersWithProjectPermission: Authenticator class " + authenticatorClassName + " does not extend the PluggableAuthenticator class.", cce);
  1236. } catch (org.itracker.services.exceptions.AuthenticatorException ae) {
  1237. logger.error (("getUsersWithProjectPermission: Authenticator exception caugh" + "t."), ae);
  1238. }
  1239. return userList;
  1240. }
  1241.  
  1242. {
  1243. java.util.HashSet < org.itracker.model.User > users = new java.util.HashSet < org.itracker.model.User > ();
  1244. java.util.List < org.itracker.model.User > editUsers = getUsersWithProjectPermission (projectId, org.itracker.services.util.UserUtilities.PERMISSION_EDIT, true);
  1245. int i = 0;
  1246. {
  1247. labeled : while (i < editUsers.size ()) {
  1248. labeled : {
  1249. users.add (editUsers.get (i));
  1250. i ++;
  1251. }}
  1252. } java.util.List < org.itracker.model.User > otherUsers = getUsersWithProjectPermission (projectId, new int [] {org.itracker.services.util.UserUtilities.PERMISSION_EDIT_USERS, org.itracker.services.util.UserUtilities.PERMISSION_ASSIGNABLE}, true, true);
  1253. i = 0;
  1254. {
  1255. labeled : while (i < otherUsers.size ()) {
  1256. labeled : {
  1257. users.add (otherUsers.get (i));
  1258. i ++;
  1259. }}
  1260. } if (issue != null) {
  1261. org.itracker.model.User creator = issue.getCreator ();
  1262. if (org.itracker.services.util.UserUtilities.hasPermission (getUsersMapOfProjectIdsAndSetOfPermissionTypes (creator, 0), projectId, org.itracker.services.util.UserUtilities.PERMISSION_EDIT_USERS)) {
  1263. users.add (creator);
  1264. }
  1265. if (issue.getOwner () != null) {
  1266. org.itracker.model.User owner = issue.getOwner ();
  1267. users.add (owner);
  1268. }
  1269. } else if (userId != null) {
  1270. org.itracker.model.User creator = getUser (userId);
  1271. if (org.itracker.services.util.UserUtilities.hasPermission (getUsersMapOfProjectIdsAndSetOfPermissionTypes (creator, 0), projectId, org.itracker.services.util.UserUtilities.PERMISSION_EDIT_USERS)) {
  1272. users.add (creator);
  1273. }
  1274. }
  1275.  
  1276. int j = 0;
  1277. java.util.List < org.itracker.model.User > userList = new java.util.ArrayList < org.itracker.model.User > ();
  1278. java.util.Iterator < org.itracker.model.User > iter = users.iterator ();
  1279. while (iter.hasNext ()) {
  1280. labeled : {
  1281. userList.add ((org.itracker.model.User) iter.next ());
  1282. j ++;
  1283. }}
  1284. return userList;
  1285. }
  1286.  
  1287. {
  1288. this.roleItem = new java.util.ArrayList < javax.faces.model.SelectItem > ();
  1289. java.util.List < wilos.model.misc.wilosuser.Role > roles = this.roleService.getRoleDao ().getRole ();
  1290. java.util.Iterator extfor$iter = roles.iterator ();
  1291. while (extfor$iter.hasNext ()) {
  1292. wilos.model.misc.wilosuser.Role r = (wilos.model.misc.wilosuser.Role) extfor$iter.next ();
  1293. if (! r.getRole_id ().equalsIgnoreCase (userold.getRole_id ())) this.roleItem.add (new javax.faces.model.SelectItem (r.getRole_id (), r.getName ()));
  1294. else this.roleItem.add (0, new javax.faces.model.SelectItem (r.getRole_id (), r.getName ()));
  1295.  
  1296. }
  1297. return this.roleItem;
  1298. }
  1299.  
  1300. {
  1301. this.roleListFilter = new java.util.ArrayList < javax.faces.model.SelectItem > ();
  1302. java.util.List < wilos.model.misc.wilosuser.Role > roles = this.roleService.getRoleDao ().getRole ();
  1303. java.util.Iterator extfor$iter = roles.iterator ();
  1304. while (extfor$iter.hasNext ()) {
  1305. wilos.model.misc.wilosuser.Role r = (wilos.model.misc.wilosuser.Role) extfor$iter.next ();
  1306. this.roleListFilter.add (new javax.faces.model.SelectItem (r.getRole_id (), r.getName ()));
  1307. }
  1308. wilos.model.misc.wilosuser.Role r = new wilos.model.misc.wilosuser.Role ();
  1309. r.setName (wilos.resources.LocaleBean.getText ("component.participantlist.all"));
  1310. r.setRole_id ("99");
  1311. this.roleListFilter.add (0, new javax.faces.model.SelectItem (r.getRole_id (), r.getName ()));
  1312. return this.roleListFilter;
  1313. }
  1314.  
  1315. {
  1316. if (! this.selectedProcessId.equals ("default")) {
  1317. wilos.model.spem2.process.Process process = this.processService.getProcess (this.selectedProcessId);
  1318. if (! this.viewedProcessId.equals (process.getId ()) || this.expTableContentWorkProduct.isEmpty ()) {
  1319. this.viewedProcessId = process.getId ();
  1320. this.isExpandedTableWorkProduct.clear ();
  1321. this.expTableContentWorkProduct.clear ();
  1322. this.indentationContentWorkProduct.clear ();
  1323. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > lines = this.getExpTableLineContent (process);
  1324. this.expTableContentWorkProduct.addAll (lines);
  1325. }
  1326. }
  1327. return this.expTableContentWorkProduct;
  1328. }
  1329.  
  1330. {
  1331. java.util.List < java.util.HashMap < java.lang.String, java.lang.Object > > lines = new java.util.ArrayList < java.util.HashMap < java.lang.String, java.lang.Object > > ();
  1332. wilos.model.misc.project.Project project = this.projectService.getProject ((java.lang.String) wilos.presentation.web.utils.WebSessionService.getAttribute (wilos.presentation.web.utils.WebSessionService.PROJECT_ID));
  1333. java.util.Iterator extfor$iter = this.processService.getWorkProductDescriptorsFromProcess (_process).iterator ();
  1334. {
  1335. labeled : while (extfor$iter.hasNext ()) {
  1336. wilos.model.spem2.workproduct.WorkProductDescriptor wpd = (wilos.model.spem2.workproduct.WorkProductDescriptor) extfor$iter.next ();
  1337. java.util.HashMap < java.lang.String, java.lang.Object > hm = new java.util.HashMap < java.lang.String, java.lang.Object > ();
  1338. int nb = this.processService.getWorkProductDescriptorsWithTheSameNameNumberInProcess (_process, wpd.getPresentationName ());
  1339. if (nb == 0) {
  1340. hm.put ("nodeType", "leaf");
  1341. hm.put ("expansionImage", TABLE_LEAF);
  1342. } else {
  1343. hm.put ("nodeType", "node");
  1344. hm.put ("expansionImage", CONTRACT_TABLE_ARROW);
  1345. }
  1346. hm.put ("id", wpd.getId ());
  1347. hm.put ("name", wpd.getPresentationName ());
  1348. hm.put ("isDisabled", false);
  1349. int nbcwpd = this.projectService.getConcreteWorkProductDescriptorsFromProject (project).size ();
  1350. if (nbcwpd > 0) {
  1351. hm.put ("nbOccurences", new java.lang.Integer (0));
  1352. } else {
  1353. hm.put ("nbOccurences", new java.lang.Integer (1));
  1354. }
  1355. hm.put ("parentId", wpd.getPresentationName ());
  1356. lines.add (hm);
  1357. }
  1358. } return lines;
  1359. }
  1360.  
  1361. {
  1362. java.util.List < javax.faces.model.SelectItem > rolesList = new java.util.ArrayList < javax.faces.model.SelectItem > ();
  1363. rolesList.add (new javax.faces.model.SelectItem ("default", wilos.resources.LocaleBean.getText (("component.project.workproductsinstanciation.roleComboBoxDefa" + "ultChoice"))));
  1364. wilos.model.misc.project.Project project = this.projectService.getProject ((java.lang.String) wilos.presentation.web.utils.WebSessionService.getAttribute (wilos.presentation.web.utils.WebSessionService.PROJECT_ID));
  1365. if (project != null) {
  1366. wilos.model.spem2.process.Process process = project.getProcess ();
  1367. if (process != null) {
  1368. wilos.model.misc.concreteactivity.ConcreteActivity cact = this.concreteActivityService.getConcreteActivity (this.selectedConcreteActivityId);
  1369. if (this.selectedConcreteActivityId.equals (project.getId ())) {
  1370. java.util.SortedSet < wilos.model.spem2.breakdownelement.BreakdownElement > bdes = this.processService.getAllBreakdownElements (process);
  1371. java.util.Iterator extfor$iter = bdes.iterator ();
  1372. while (extfor$iter.hasNext ()) {
  1373. wilos.model.spem2.breakdownelement.BreakdownElement bde = (wilos.model.spem2.breakdownelement.BreakdownElement) extfor$iter.next ();
  1374. if (bde instanceof wilos.model.spem2.role.RoleDescriptor) {
  1375. wilos.model.spem2.role.RoleDescriptor rd = (wilos.model.spem2.role.RoleDescriptor) bde;
  1376. rolesList.add (new javax.faces.model.SelectItem (rd.getId (), rd.getPresentationName ()));
  1377. }
  1378. }
  1379. }
  1380. if (! this.selectedConcreteActivityId.equals ("default") && ! this.selectedConcreteActivityId.equals (project.getId ())) {
  1381. java.util.SortedSet < wilos.model.spem2.breakdownelement.BreakdownElement > bdEs = this.activityService.getAllBreakdownElements (cact.getActivity ());
  1382. java.util.Iterator extfor$iter$1 = bdEs.iterator ();
  1383. while (extfor$iter$1.hasNext ()) {
  1384. wilos.model.spem2.breakdownelement.BreakdownElement bde = (wilos.model.spem2.breakdownelement.BreakdownElement) extfor$iter$1.next ();
  1385. if (bde instanceof wilos.model.spem2.role.RoleDescriptor) {
  1386. rolesList.add (new javax.faces.model.SelectItem (bde.getId (), bde.getPresentationName ()));
  1387. }
  1388. }
  1389. }
  1390. rolesList.add (new javax.faces.model.SelectItem ("null", wilos.resources.LocaleBean.getText ("component.project.workproductsinstanciation.noRole")));
  1391. }
  1392. }
  1393. return rolesList;
  1394. }
  1395.  
  1396. {
  1397. java.util.List < javax.faces.model.SelectItem > activityList = new java.util.ArrayList < javax.faces.model.SelectItem > ();
  1398. activityList.add (new javax.faces.model.SelectItem ("default", wilos.resources.LocaleBean.getText (("component.project.workproductsinstanciation.actComboBoxDefau" + "ltChoice"))));
  1399. wilos.model.misc.project.Project project = this.projectService.getProject ((java.lang.String) wilos.presentation.web.utils.WebSessionService.getAttribute (wilos.presentation.web.utils.WebSessionService.PROJECT_ID));
  1400. if (project != null) {
  1401. java.util.Iterator extfor$iter = this.concreteActivityService.getConcreteActivitiesFromProject (project).iterator ();
  1402. while (extfor$iter.hasNext ()) {
  1403. wilos.model.misc.concreteactivity.ConcreteActivity cact = (wilos.model.misc.concreteactivity.ConcreteActivity) extfor$iter.next ();
  1404. if (! cact.getState ().equals (wilos.utils.Constantes.State.FINISHED)) {
  1405. activityList.add (new javax.faces.model.SelectItem (cact.getId (), cact.getConcreteName ()));
  1406. }
  1407. }
  1408. if (! project.getState ().equals (wilos.utils.Constantes.State.FINISHED)) {
  1409. activityList.add (new javax.faces.model.SelectItem (project.getId (), project.getConcreteName ()));
  1410. }
  1411. }
  1412. return activityList;
  1413. }
Add Comment
Please, Sign In to add comment