Policy failures:   
Code warning
- failed on resource ListReportController.java. Reason: ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized, line 74
- failed on resource ListReportController.java. Reason: ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized, line 98
- failed on resource ListReportController.java. Reason: List is a raw type. References to generic type List<E> should be parameterized, line 74
- failed on resource ListReportController.java. Reason: List is a raw type. References to generic type List<E> 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<E> should be parameterized, line 102
... and more.  
Override reason:   
huhu
This commit is contained in:
Frederic Debuire
2008-02-25 10:32:50 +00:00
parent 15a2f365a6
commit 3fd37463d9
9 changed files with 244 additions and 62 deletions

View File

@@ -14,12 +14,12 @@
<div style="border: 1px solid orange;"> <div style="border: 1px solid orange;">
<table style="width: 100%"> <table style="width: 100%">
<tr> <tr>
<td colspan="2" align="center"> <td colspan="3" align="center">
<a title="To see the detail and download" href="<c:url value="/detailArticle.htm"><c:param name="id" value="${article.article.id}"/></c:url>"><b>${article.article.title}</b></a> by ${article.article.mainAuthor.firstName} ${article.article.mainAuthor.lastName} <a title="To see the detail and download" href="<c:url value="/detailArticle.htm"><c:param name="id" value="${article.article.id}"/></c:url>"><b>${article.article.title}</b></a> by ${article.article.mainAuthor.firstName} ${article.article.mainAuthor.lastName}
</td> </td>
</tr> </tr>
<tr> <tr>
<td align="left"> <td align="left" width="33%">
<c:choose> <c:choose>
<c:when test="${not empty article.referee}"> <c:when test="${not empty article.referee}">
Delegated to:<br /> Delegated to:<br />
@@ -32,7 +32,17 @@
</c:otherwise> </c:otherwise>
</c:choose> </c:choose>
</td> </td>
<td align="right"> <td align="center" width="33%">
<c:choose>
<c:when test="${article.article.state == 'EVALUATED' or article.article.state == 'REJECTED' or article.article.state == 'ACCEPTED'}">
<a href="<c:url value="listReport.htm?id=${article.article.id}"/>"><fmt:message key="validate.report" /></a>
</c:when>
<c:otherwise>
&nbsp;
</c:otherwise>
</c:choose>
</td>
<td align="right" width="33%">
<c:if test="${article.evaluated == false and empty article.referee}"> <c:if test="${article.evaluated == false and empty article.referee}">
<c:if test="${article.article.state != 'REJECTED' and article.article.state != 'ACCEPTED'}"> <c:if test="${article.article.state != 'REJECTED' and article.article.state != 'ACCEPTED'}">
<a title="Click to evaluate" href="<c:url value="evaluation.htm?id=${article.article.id}"/>">Evaluate <img src="./images/button_follow_32x32.png" alt="Click to evaluate" /></a> <a title="Click to evaluate" href="<c:url value="evaluation.htm?id=${article.article.id}"/>">Evaluate <img src="./images/button_follow_32x32.png" alt="Click to evaluate" /></a>

View File

@@ -0,0 +1,52 @@
<%@ include file="/WEB-INF/decorators/include.jsp"%>
<html>
<head></head>
<body>
<h4 class="title"><fmt:message key="report.headPage" /></h4>
<c:choose>
<c:when test="${empty listReport}">
<div class="warningBox">
There is no report for this article at the moment.
</div>
</c:when>
<c:otherwise>
<c:forEach items="${listReport}" var="report" varStatus="current">
<table>
<tr>
<td><fmt:message key="report.referee" />: ${report.referee.firstName} ${report.referee.lastName}</td>
</tr>
<tr>
<td><fmt:message key="evaluation.titleArticle" /></td>
<td>${report.article.title}</td>
</tr>
<c:forEach items="${container[current.index]}" var="rating">
<tr>
<td><fmt:message key="evaluation.note" /></td>
<td>${rating.criterion.name} is:</td>
<td>${rating.value}</td>
</tr>
</c:forEach>
<tr>
<td><fmt:message key="evaluation.commentAuthor" /></td>
<td>${report.commentAuthor}</td>
</tr>
</table>
<hr>
</c:forEach>
</c:otherwise>
</c:choose>
<br />
<a class="back_link" href="<c:url value="${whereIcome}"/>"><fmt:message key="form.link.back" /></a>
</body>
</html>

View File

@@ -55,8 +55,18 @@
<tr> <tr>
<td colspan="2" align="center"> <td colspan="2" align="center">
<a class="manage_link" id="articleURL${i.index}" title="Download" href="<c:url value="/download.htm"><c:param name="articleId" value="${article.id}"/></c:url>">Download<img src="./images/cc-download_manager-32x32.png" alt="Download" /></a> <a class="manage_link" id="articleURL${i.index}" title="Download" href="<c:url value="/download.htm"><c:param name="articleId" value="${article.id}"/></c:url>">Download<img src="./images/cc-download_manager-32x32.png" alt="Download" /></a>
<a class="manage_link" id="modifyArticle${i.index}" title="Modify" href="<c:url value="/submissionArticle.htm"><c:param name="action" value="modify"/><c:param name="articleID" value="${article.id}"/></c:url>">Modify<img src="./images/cc-kedit-32x32.png" alt="Modify" /></a> <c:if test="${article.state != 'EVALUATED' and article.state != 'REJECTED' and article.state != 'ACCEPTED'}">
<a class="manage_link" id="suppressArticle${i.index}" title="Delete" href="javascript:deleteArticle(${article.id});">Delete<img src="./images/cc-button_cancel-32x32.png" alt="Delete"/></a> <a class="manage_link" id="modifyArticle${i.index}" title="Modify" href="<c:url value="/submissionArticle.htm"><c:param name="action" value="modify"/><c:param name="articleID" value="${article.id}"/></c:url>">Modify<img src="./images/cc-kedit-32x32.png" alt="Modify" /></a>
<a class="manage_link" id="suppressArticle${i.index}" title="Delete" href="javascript:deleteArticle(${article.id});">Delete<img src="./images/cc-button_cancel-32x32.png" alt="Delete"/></a>
</c:if>
<c:choose>
<c:when test="${article.state == 'EVALUATED' or article.state == 'REJECTED' or article.state == 'ACCEPTED'}">
<br/><a href="<c:url value="listReportAuthor.htm?id=${article.id}"/>"><fmt:message key="validate.report" /></a>
</c:when>
<c:otherwise>
&nbsp;
</c:otherwise>
</c:choose>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@@ -307,6 +307,11 @@ function showArticleReferee() {
</c:forEach> </c:forEach>
</c:when> </c:when>
<c:otherwise> <c:otherwise>
&nbsp;
</c:otherwise>
</c:choose>
</td>
<td>
<c:if test="${article.evaluated == false}"> <c:if test="${article.evaluated == false}">
<c:if test="${article.state != 'REJECTED' and article.state != 'ACCEPTED'}"> <c:if test="${article.state != 'REJECTED' and article.state != 'ACCEPTED'}">
To evaluate To evaluate
@@ -323,9 +328,6 @@ function showArticleReferee() {
<c:if test="${article.state == 'ACCEPTED'}"> <c:if test="${article.state == 'ACCEPTED'}">
Accepted Accepted
</c:if> </c:if>
</c:otherwise>
</c:choose>
</td> </td>
<td align="center" width="25%"> <td align="center" width="25%">
<a href="chooseConference.htm?idConf=${article.conference.id}">${article.conference.title}</a> <a href="chooseConference.htm?idConf=${article.conference.id}">${article.conference.title}</a>

View File

@@ -44,6 +44,7 @@
<prop key="/download.htm">ArticleDownloadController</prop> <prop key="/download.htm">ArticleDownloadController</prop>
<prop key="/deleteArticle.htm">ArticleDeleteController</prop> <prop key="/deleteArticle.htm">ArticleDeleteController</prop>
<prop key="/listReport.htm">ListReportController</prop> <prop key="/listReport.htm">ListReportController</prop>
<prop key="/listReportAuthor.htm">ListReportAuthorController</prop>
<prop key="/forgotPassword.htm">ForgotPasswordController</prop> <prop key="/forgotPassword.htm">ForgotPasswordController</prop>
<prop key="/detailArticle.htm">DetailArticleController</prop> <prop key="/detailArticle.htm">DetailArticleController</prop>
<prop key="/userBoard.htm">UserBoardController</prop> <prop key="/userBoard.htm">UserBoardController</prop>
@@ -217,6 +218,7 @@
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />
<property name="userManager" ref="userManager" /> <property name="userManager" ref="userManager" />
<property name="conferenceManager" ref="conferenceManager" /> <property name="conferenceManager" ref="conferenceManager" />
<property name="evaluationManager" ref="evaluationManager" />
</bean> </bean>
@@ -297,6 +299,11 @@
<property name="evaluationManager" ref="evaluationManager" /> <property name="evaluationManager" ref="evaluationManager" />
</bean> </bean>
<bean id="ListReportAuthorController"
class="org.yacos.web.author.controller.ListReportAuthorController">
<property name="evaluationManager" ref="evaluationManager" />
</bean>
<bean id="DetailArticleController" <bean id="DetailArticleController"
class="org.yacos.web.author.controller.DetailArticleController"> class="org.yacos.web.author.controller.DetailArticleController">
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />

View File

@@ -2,20 +2,20 @@ package org.yacos.web.PCmember.controller;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller; import org.springframework.web.servlet.mvc.Controller;
import org.yacos.core.article.Article; import org.yacos.core.article.Article;
import org.yacos.core.article.IArticleManager; import org.yacos.core.article.IArticleManager;
import org.yacos.core.article.Article.State;
import org.yacos.core.conferences.Conference; import org.yacos.core.conferences.Conference;
import org.yacos.core.conferences.IConferenceManager; import org.yacos.core.conferences.IConferenceManager;
import org.yacos.core.evaluation.IEvaluationManager;
import org.yacos.core.evaluation.Report;
import org.yacos.core.users.IUserManager; import org.yacos.core.users.IUserManager;
import org.yacos.core.users.Role;
import org.yacos.core.users.Speciality; import org.yacos.core.users.Speciality;
import org.yacos.core.users.User; import org.yacos.core.users.User;
import org.yacos.core.users.Role.RoleType; import org.yacos.core.users.Role.RoleType;
@@ -49,6 +49,14 @@ public class DelegateArticleController implements Controller{
this.conferenceManager = conferenceManager; this.conferenceManager = conferenceManager;
} }
private IEvaluationManager evaluationManager;
public IEvaluationManager getEvaluationManager() {
return evaluationManager;
}
public void setEvaluationManager(IEvaluationManager evaluationManager) {
this.evaluationManager = evaluationManager;
}
Conference conf; Conference conf;
String memberId; String memberId;
@@ -58,17 +66,29 @@ public class DelegateArticleController implements Controller{
conf = SessionService.getInstance().getCurrentConference(); conf = SessionService.getInstance().getCurrentConference();
memberId = SessionService.getInstance().getCurrentUserLogin(); memberId = SessionService.getInstance().getCurrentUserLogin();
String login = SessionService.getInstance().getCurrentUserLogin(); String login = SessionService.getInstance().getCurrentUserLogin();
List<Article> listArticles = articleManager.getArticlesOfMember(conf.getId(), login); List<Article> listArticlesTmp = articleManager.getArticlesOfMember(conf.getId(), login);
List<Article> listArticles = new ArrayList<Article>();
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"); logger.info("returning delegateArticle with "+ listArticles.size() +" article");
return new ModelAndView("delegateArticle","articles", listArticles); return new ModelAndView("delegateArticle","articles", listArticles);
} }
public List<RefereeBean> getRefereesWithTheArticle(int articleId ){ public List<RefereeBean> getRefereesWithTheArticle(int articleId ){
RefereeBean member; RefereeBean member;
//Conference conf = SessionService.getInstance().getCurrentConference(); //Conference conf = SessionService.getInstance().getCurrentConference();
//List de RefereeBean qui sera retourn<72> //List de RefereeBean qui sera retourn<72>
List<RefereeBean> articleMembers = new ArrayList<RefereeBean>(); List<RefereeBean> articleMembers = new ArrayList<RefereeBean>();
//list of the member who have this article //list of the member who have this article
@@ -81,7 +101,7 @@ public List<RefereeBean> getRefereesWithTheArticle(int articleId ){
member.setLogin(user.getLogin()); member.setLogin(user.getLogin());
//recuperation des specialit<69>es //recuperation des specialit<69>es
List<String> spectialities = new ArrayList<String>(); List<String> spectialities = new ArrayList<String>();
List<Speciality> listSpe = userManager.getSpecialitiesFromUser(member.getLogin()); List<Speciality> listSpe = userManager.getSpecialitiesFromUser(member.getLogin());
for (Speciality speciality : listSpe) { for (Speciality speciality : listSpe) {
@@ -101,7 +121,7 @@ public List<RefereeBean> getRefereesWithTheArticle(int articleId ){
RefereeBean member; RefereeBean member;
//Conference conf = SessionService.getInstance().getCurrentConference(); //Conference conf = SessionService.getInstance().getCurrentConference();
//List de RefereeBean qui sera retourn<72> //List de RefereeBean qui sera retourn<72>
List<RefereeBean> members = new ArrayList<RefereeBean>(); List<RefereeBean> members = new ArrayList<RefereeBean>();
//list of all pcmembers of the conference //list of all pcmembers of the conference
@@ -117,7 +137,7 @@ public List<RefereeBean> getRefereesWithTheArticle(int articleId ){
member.setLogin(user.getLogin()); member.setLogin(user.getLogin());
//recuperation des specialit<69>es //recuperation des specialit<69>es
List<String> spectialities = new ArrayList<String>(); List<String> spectialities = new ArrayList<String>();
List<Speciality> listSpe = userManager.getSpecialitiesFromUser(member.getLogin()); List<Speciality> listSpe = userManager.getSpecialitiesFromUser(member.getLogin());
for (Speciality speciality : listSpe) { for (Speciality speciality : listSpe) {
@@ -126,8 +146,8 @@ public List<RefereeBean> getRefereesWithTheArticle(int articleId ){
member.setSpecialities(spectialities); member.setSpecialities(spectialities);
if (!refereesTmp.contains(user) if (!refereesTmp.contains(user)
&& !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId()) && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId())
&& !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId()) && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId())
){ ){
members.add(member); members.add(member);
} }

View File

@@ -128,6 +128,7 @@ public class ListReportController extends SimpleFormController {
model.put("whereIcome", request.getHeader("REFERER")); model.put("whereIcome", request.getHeader("REFERER"));
/* double[] moyennes=new double[listReport.size()]; /* double[] moyennes=new double[listReport.size()];
@@ -138,7 +139,6 @@ public class ListReportController extends SimpleFormController {
}*/ }*/
return new ModelAndView("listReport", model); return new ModelAndView("listReport", model);
} }
@@ -154,12 +154,4 @@ public class ListReportController extends SimpleFormController {
public void setEvaluationManager(IEvaluationManager evaluationManager) { public void setEvaluationManager(IEvaluationManager evaluationManager) {
this.evaluationManager = evaluationManager; this.evaluationManager = evaluationManager;
} }
public IUserManager getUserManager() {
return userManager;
}
public void setUserManager(IUserManager userManager) {
this.userManager = userManager;
}
} }

View File

@@ -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<Report> listReport;
String reportId = request.getParameter("id");
try {
Integer id = new Integer(reportId);
Map <String, Object> model = new HashMap<String, Object>();
listReport = evaluationManager.getReportsForArticle(id);
if (listReport.isEmpty())
return new ModelAndView("listReport", "listReport", null);
model.put("listReport", listReport);
List<List<Rating>> container = new ArrayList<List<Rating>>();
for (int i=0; i<=listReport.size()-1;i++){
List<Rating> 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;
}
}

View File

@@ -160,15 +160,29 @@ public class UserBoardController extends SimpleFormController {
ab.setURL_article(a.getURL_article()); ab.setURL_article(a.getURL_article());
ab.setConference(articleManager.getConferenceForArticle(a.getId())); ab.setConference(articleManager.getConferenceForArticle(a.getId()));
List<User> referee = userManager.getRefereesOfPcMemberForArticle(SessionService.getInstance().getCurrentUserLogin(), a.getId()); List<User> referee = userManager.getRefereesOfPcMemberForArticle(SessionService.getInstance().getCurrentUserLogin(), a.getId());
if (referee != null) if (referee != null) {
ab.setReferee(referee); ab.setReferee(referee);
else }
else {
ab.setReferee(null); ab.setReferee(null);
}
Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin()); Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin());
if (rpt == null) { if (rpt == null) {
ab.setEvaluated(false); if (referee != null) {
if (! a.getState().equals(State.ACCEPTED) && ! a.getState().equals(State.REJECTED)) 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++; numberNotEvaluatedPCMember++;
} }
else { else {