From 3fd37463d9f0ca2baf456da990567c772d7f4249 Mon Sep 17 00:00:00 2001 From: Frederic Debuire Date: Mon, 25 Feb 2008 10:32:50 +0000 Subject: [PATCH] Debug Policy failures: Code warning - failed on resource ListReportController.java. Reason: ArrayList is a raw type. References to generic type ArrayList should be parameterized, line 74 - failed on resource ListReportController.java. Reason: ArrayList is a raw type. References to generic type ArrayList should be parameterized, line 98 - failed on resource ListReportController.java. Reason: List is a raw type. References to generic type List should be parameterized, line 74 - failed on resource ListReportController.java. Reason: List is a raw type. References to generic type List should be parameterized, line 98 - failed on resource ListReportController.java. Reason: Type safety: The method add(Object) belongs to the raw type List. References to generic type List should be parameterized, line 102 ... and more. Override reason: huhu --- .../WebContent/WEB-INF/jsp/listEvaluation.jsp | 16 +++- .../WEB-INF/jsp/listReportAuthor.jsp | 52 ++++++++++ .../WebContent/WEB-INF/jsp/manageArticle.jsp | 16 +++- YACOSWeb/WebContent/WEB-INF/jsp/userBoard.jsp | 12 ++- YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml | 9 +- .../controller/DelegateArticleController.java | 94 +++++++++++-------- .../controller/ListReportController.java | 10 +- .../ListReportAuthorController.java | 75 +++++++++++++++ .../controller/UserBoardController.java | 22 ++++- 9 files changed, 244 insertions(+), 62 deletions(-) create mode 100644 YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp create mode 100644 YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/listEvaluation.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/listEvaluation.jsp index 52c26dc..661748c 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/listEvaluation.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/listEvaluation.jsp @@ -14,12 +14,12 @@
- - + - diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/userBoard.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/userBoard.jsp index 9fbe944..30690b2 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/userBoard.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/userBoard.jsp @@ -306,7 +306,12 @@ function showArticleReferee() { ${referee.firstName} ${referee.lastName}
- + +   + + + +
+ ">${article.article.title} by ${article.article.mainAuthor.firstName} ${article.article.mainAuthor.lastName}
+ Delegated to:
@@ -31,8 +31,18 @@  
+
+ + + "> + + +   + + + ">Evaluate Click to evaluate diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp new file mode 100644 index 0000000..32e3ee2 --- /dev/null +++ b/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp @@ -0,0 +1,52 @@ +<%@ include file="/WEB-INF/decorators/include.jsp"%> + + + + + +

+ + + +
+ There is no report for this article at the moment. +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
: ${report.referee.firstName} ${report.referee.lastName}
${report.article.title}
${rating.criterion.name} is:${rating.value}
${report.commentAuthor}
+
+ +
+
+ +
+ +
+"> + + + diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp index 57968d2..38dde5c 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp @@ -54,9 +54,19 @@
- ">DownloadDownload - ">ModifyModify - DeleteDelete + ">DownloadDownload + + ">ModifyModify + DeleteDelete + + + +
"> +
+ +   + +
To evaluate @@ -322,10 +327,7 @@ function showArticleReferee() { Accepted - - - - + ${article.conference.title} diff --git a/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml b/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml index 11b0d87..e5f7e50 100644 --- a/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml +++ b/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml @@ -44,6 +44,7 @@ ArticleDownloadController ArticleDeleteController ListReportController + ListReportAuthorController ForgotPasswordController DetailArticleController UserBoardController @@ -216,7 +217,8 @@ - + + @@ -295,6 +297,11 @@ + + + + listArticles = articleManager.getArticlesOfMember(conf.getId(), login); + List
listArticlesTmp = articleManager.getArticlesOfMember(conf.getId(), login); + List
listArticles = new ArrayList
(); + + for (Article a : listArticlesTmp) { + Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin()); + if (rpt == null) { + if (a.getState() != State.ACCEPTED && a.getState() != State.REJECTED) + listArticles.add(a); + } + } + + logger.info("returning delegateArticle with "+ listArticles.size() +" article"); + return new ModelAndView("delegateArticle","articles", listArticles); } -public List getRefereesWithTheArticle(int articleId ){ - + public List getRefereesWithTheArticle(int articleId ){ + RefereeBean member; //Conference conf = SessionService.getInstance().getCurrentConference(); - - //List de RefereeBean qui sera retourné + + //List de RefereeBean qui sera retourn� List articleMembers = new ArrayList(); - + //list of the member who have this article List articleMembersTmp = userManager.getRefereesOfPcMemberForArticle(memberId, articleId); - + for (User user : articleMembersTmp) { member = new RefereeBean(); member.setFirstName(user.getFirstName()); member.setLastName(user.getLastName()); member.setLogin(user.getLogin()); - - - //recuperation des specialitées + + + //recuperation des specialit�es List spectialities = new ArrayList(); List listSpe = userManager.getSpecialitiesFromUser(member.getLogin()); for (Speciality speciality : listSpe) { spectialities.add(speciality.getName()); } member.setSpecialities(spectialities); - + //add the member to the return list articleMembers.add(member); } - + return articleMembers; } - + public List getRefereesWithoutTheArticle(int articleId ){ - + RefereeBean member; //Conference conf = SessionService.getInstance().getCurrentConference(); - - //List de RefereeBean qui sera retourné + + //List de RefereeBean qui sera retourn� List members = new ArrayList(); - + //list of all pcmembers of the conference List membersTmp = userManager.getUsers(); - + //list of the member who have this article List refereesTmp = userManager.getRefereesOfPcMemberForArticle(memberId, articleId); - + for (User user : membersTmp) { member = new RefereeBean(); member.setFirstName(user.getFirstName()); member.setLastName(user.getLastName()); member.setLogin(user.getLogin()); - - - //recuperation des specialitées + + + //recuperation des specialit�es List spectialities = new ArrayList(); List listSpe = userManager.getSpecialitiesFromUser(member.getLogin()); for (Speciality speciality : listSpe) { spectialities.add(speciality.getName()); } member.setSpecialities(spectialities); - + if (!refereesTmp.contains(user) - && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId()) - && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId()) + && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId()) + && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId()) ){ members.add(member); } - + } logger.debug("return"+ members.size() +"members"); return members; } - - + + public void addReferees(List refereesId,int articleId){ for (String refereeId : refereesId) { articleManager.delegateArticleToReferee(articleId, refereeId,memberId); @@ -149,11 +169,11 @@ public List getRefereesWithTheArticle(int articleId ){ } public void removeReferees(List refereesId,int articleId){ - + for (String refereeId : refereesId) { articleManager.undelegateArticleToReferee(articleId, refereeId, memberId); } - + logger.info("remove members to article"); } } diff --git a/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java b/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java index 86623d2..f7e1521 100644 --- a/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java +++ b/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java @@ -128,6 +128,7 @@ public class ListReportController extends SimpleFormController { + model.put("whereIcome", request.getHeader("REFERER")); /* double[] moyennes=new double[listReport.size()]; @@ -138,7 +139,6 @@ public class ListReportController extends SimpleFormController { }*/ - return new ModelAndView("listReport", model); } @@ -154,12 +154,4 @@ public class ListReportController extends SimpleFormController { public void setEvaluationManager(IEvaluationManager evaluationManager) { this.evaluationManager = evaluationManager; } - - public IUserManager getUserManager() { - return userManager; - } - - public void setUserManager(IUserManager userManager) { - this.userManager = userManager; - } } \ No newline at end of file diff --git a/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java b/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java new file mode 100644 index 0000000..fae145a --- /dev/null +++ b/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java @@ -0,0 +1,75 @@ +package org.yacos.web.author.controller; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.ModelAndViewDefiningException; +import org.springframework.web.servlet.mvc.SimpleFormController; +import org.yacos.core.evaluation.IEvaluationManager; +import org.yacos.core.evaluation.Rating; +import org.yacos.core.evaluation.Report; +import org.yacos.web.system.controller.NoConferenceSelectedException; + + +public class ListReportAuthorController extends SimpleFormController { + + protected final Log logger = LogFactory.getLog(getClass()); + + private IEvaluationManager evaluationManager; + + public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException, NoConferenceSelectedException { + + logger.info("Returning listReport view"); + + List listReport; + String reportId = request.getParameter("id"); + + try { + + Integer id = new Integer(reportId); + + Map model = new HashMap(); + + listReport = evaluationManager.getReportsForArticle(id); + + if (listReport.isEmpty()) + return new ModelAndView("listReport", "listReport", null); + + model.put("listReport", listReport); + + List> container = new ArrayList>(); + + for (int i=0; i<=listReport.size()-1;i++){ + List ratings = evaluationManager.getRatingForReport(listReport.get(i).getId()); + container.add(ratings); + } + model.put("container", container); + model.put("whereIcome", request.getHeader("REFERER")); + + return new ModelAndView("listReport", model); + } + + catch (NumberFormatException e) { + throw new ModelAndViewDefiningException(new ModelAndView("404error")); + } + } + + public IEvaluationManager getEvaluationManager() { + return evaluationManager; + } + + public void setEvaluationManager(IEvaluationManager evaluationManager) { + this.evaluationManager = evaluationManager; + } +} \ No newline at end of file diff --git a/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java b/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java index 05b4fda..70d5198 100644 --- a/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java +++ b/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java @@ -160,15 +160,29 @@ public class UserBoardController extends SimpleFormController { ab.setURL_article(a.getURL_article()); ab.setConference(articleManager.getConferenceForArticle(a.getId())); List referee = userManager.getRefereesOfPcMemberForArticle(SessionService.getInstance().getCurrentUserLogin(), a.getId()); - if (referee != null) + if (referee != null) { ab.setReferee(referee); - else + } + else { ab.setReferee(null); + } Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin()); if (rpt == null) { - ab.setEvaluated(false); - if (! a.getState().equals(State.ACCEPTED) && ! a.getState().equals(State.REJECTED)) + if (referee != null) { + for (User r : referee) { + Report tmp = evaluationManager.getReportforArticleAndReferee(a.getId(), r.getLogin()); + if (tmp != null) { + ab.setEvaluated(true); + break; + } + } + } + else { + ab.setEvaluated(false); + } + + if (! a.getState().equals(State.ACCEPTED) && ! a.getState().equals(State.REJECTED) && referee == null) numberNotEvaluatedPCMember++; } else {