Index: lams_tool_sbmt/build.properties
===================================================================
diff -u -ra8637bbd49b901ff6a00b2d6fb048d94429aba3f -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/build.properties (.../build.properties) (revision a8637bbd49b901ff6a00b2d6fb048d94429aba3f)
+++ lams_tool_sbmt/build.properties (.../build.properties) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -18,7 +18,7 @@
gui = true
#xdoclet version number
-xdoclet.version=1.2.2
+xdoclet.version=1.2.3
#web application properties
sessiontimeout=120
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java (.../SubmissionDetails.java) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java (.../SubmissionDetails.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -38,6 +38,7 @@
/** persistent field */
private SubmitFilesReport report;
+ private SubmitFilesSession submitFileSession;
/** default constructor */
public SubmissionDetails() {
@@ -157,8 +158,8 @@
}
/**
- * @hibernate.many-to-one not-null="false"
- * @hibernate.column name="report_id"
+ * @hibernate.one-to-one cascade="all" not-null="false"
+ * foreign-key="report_id"
* @return Returns the report.
*/
public SubmitFilesReport getReport() {
@@ -203,4 +204,17 @@
return obj;
}
+ /**
+ * @hibernate.many-to-one column="session_id" cascade="save-update"
+ * @return Returns the submitFileSession.
+ */
+ public SubmitFilesSession getSubmitFileSession() {
+ return submitFileSession;
+ }
+ /**
+ * @param submitFileSession The submitFileSession to set.
+ */
+ public void setSubmitFileSession(SubmitFilesSession submitFileSession) {
+ this.submitFileSession = submitFileSession;
+ }
}
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java (.../SubmitFilesSession.java) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java (.../SubmitFilesSession.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -108,7 +108,7 @@
return obj;
}
/**
- * @hibernate.set lazy="true" inverse="false" cascade="all-delete-orphan"
+ * @hibernate.set lazy="true" inverse="true" cascade="all-delete-orphan"
* @hibernate.collection-one-to-many
* class="org.lamsfoundation.lams.tool.sbmt.SubmissionDetails"
* @hibernate.collection-key column="session_id"
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/ISubmissionDetailsDAO.java
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/ISubmissionDetailsDAO.java (.../ISubmissionDetailsDAO.java) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/ISubmissionDetailsDAO.java (.../ISubmissionDetailsDAO.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -44,7 +44,7 @@
*/
public List getSubmissionDetailsForUserBySession(Long userID,Long contentID);
- public List getUsersForContent(Long contentID);
+ public List getUsersForSession(Long contentID);
/**
* Save or update the given SubmitFilesSession
value.
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmissionDetailsDAO.java
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmissionDetailsDAO.java (.../SubmissionDetailsDAO.java) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmissionDetailsDAO.java (.../SubmissionDetailsDAO.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -34,7 +34,7 @@
" in class " + SubmissionDetails.class.getName() +
" where user_id=? AND session_id=?";
private static final String FIND_DISTINCT_USER = " select distinct details.userID from SubmissionDetails details " +
- " where details.content =:contentID";
+ " where details.submitFileSession =:sessionID";
/**
@@ -65,11 +65,11 @@
return list;
}
- public List getUsersForContent(final Long contentID){
+ public List getUsersForSession(final Long sessionID){
return (List) this.getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
return session.createQuery(FIND_DISTINCT_USER)
- .setLong("contentID",contentID.longValue())
+ .setLong("sessionID",sessionID.longValue())
.list();
}
});
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java
===================================================================
diff -u -r39c01a1dca00f314cfdbaadfadf123b2f27ab580 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java (.../FileDetailsDTO.java) (revision 39c01a1dca00f314cfdbaadfadf123b2f27ab580)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dto/FileDetailsDTO.java (.../FileDetailsDTO.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -33,6 +33,7 @@
*/
public class FileDetailsDTO implements Serializable{
+ private Long submissionID;
private Long reportID;
private String filePath;
private String fileDescription;
@@ -44,9 +45,10 @@
private Long versionID;
/** Miinimal Constructor*/
- public FileDetailsDTO(String filePath, String fileDescription,
+ public FileDetailsDTO(Long submissionID, String filePath, String fileDescription,
Date dateOfSubmission,Long reportID, String comments, Long marks) {
super();
+ this.submissionID = submissionID;
this.filePath = filePath;
this.fileDescription = fileDescription;
this.dateOfSubmission = dateOfSubmission;
@@ -56,7 +58,8 @@
}
public FileDetailsDTO(SubmissionDetails details, SubmitFilesReport report){
-
+
+ this.submissionID = details.getSubmissionID();
this.filePath = details.getFilePath();
this.fileDescription = details.getFileDescription();
this.dateOfSubmission = details.getDateOfSubmission();
@@ -71,6 +74,7 @@
}
public FileDetailsDTO(SubmissionDetails details){
+ this.submissionID = details.getSubmissionID();
this.filePath = details.getFilePath();
this.fileDescription = details.getFileDescription();
this.dateOfSubmission = details.getDateOfSubmission();
@@ -194,4 +198,16 @@
public void setVersionID(Long versionID) {
this.versionID = versionID;
}
+ /**
+ * @return Returns the submissionID.
+ */
+ public Long getSubmissionID() {
+ return submissionID;
+ }
+ /**
+ * @param submissionID The submissionID to set.
+ */
+ public void setSubmissionID(Long submissionID) {
+ this.submissionID = submissionID;
+ }
}
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java
===================================================================
diff -u -r39c01a1dca00f314cfdbaadfadf123b2f27ab580 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision 39c01a1dca00f314cfdbaadfadf123b2f27ab580)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -380,6 +380,9 @@
NodeKey nodeKey = uploadFileToRepository(stream, fileName, mimeType);
SubmissionDetails details = new SubmissionDetails(filePath,fileDescription,dateOfSubmission,
userID,nodeKey.getUuid(),nodeKey.getVersion());
+ SubmitFilesReport report = new SubmitFilesReport();
+ details.setReport(report);
+ details.setSubmitFileSession(session);
//update session, then insert the detail too.
Set detailSet = session.getSubmissionDetails();
detailSet.add(details);
@@ -554,8 +557,8 @@
* (non-Javadoc)
* @see org.lamsfoundation.lams.tool.sbmt.service.ISubmitFilesService#getUsers(java.lang.Long)
*/
- public List getUsers(Long contentID){
- List users = submissionDetailsDAO.getUsersForContent(contentID);
+ public List getUsers(Long sessionID){
+ List users = submissionDetailsDAO.getUsersForSession(sessionID);
Iterator iterator = users.iterator();
List table = new ArrayList();
while(iterator.hasNext()){
@@ -569,14 +572,14 @@
* (non-Javadoc)
* @see org.lamsfoundation.lams.tool.sbmt.service.ISubmitFilesService#generateReport(java.lang.Long)
*/
- public Hashtable generateReport(Long contentID){
- List users = submissionDetailsDAO.getUsersForContent(contentID);
+ public Hashtable generateReport(Long sessionID){
+ List users = submissionDetailsDAO.getUsersForSession(sessionID);
Iterator iterator = users.iterator();
Hashtable table = new Hashtable();
while(iterator.hasNext()){
Long userID = (Long)iterator.next();
User user = userDAO.getUserById(new Integer(userID.intValue()));
- List userDetails = submissionDetailsDAO.getSubmissionDetailsForUserBySession(userID,contentID);
+ List userDetails = submissionDetailsDAO.getSubmissionDetailsForUserBySession(userID,sessionID);
table.put(user.getUserDTO(),getUserDetails(userDetails.iterator()));
}
return table;
@@ -617,13 +620,13 @@
report.getDateMarksReleased());
}
- public ArrayList getStatus(Long contentID){
+ public ArrayList getStatus(Long sessionID){
ArrayList details = new ArrayList();
- List users = submissionDetailsDAO.getUsersForContent(contentID);
+ List users = submissionDetailsDAO.getUsersForSession(sessionID);
Iterator iterator = users.iterator();
while(iterator.hasNext()){
Long userID = (Long)iterator.next();
- List allFiles = submissionDetailsDAO.getSubmissionDetailsForUserBySession(userID,contentID);
+ List allFiles = submissionDetailsDAO.getSubmissionDetailsForUserBySession(userID,sessionID);
boolean unmarked = hasUnmarkedContent(allFiles.iterator());
details.add(getStatusDetails(userID,unmarked));
}
Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java
===================================================================
diff -u -rb496f01cb0de2c2968b080bced80c36ce24bb323 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java (.../MonitoringAction.java) (revision b496f01cb0de2c2968b080bced80c36ce24bb323)
+++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/web/MonitoringAction.java (.../MonitoringAction.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -28,11 +28,12 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.lang.StringUtils;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
-
import org.lamsfoundation.lams.tool.sbmt.service.ISubmitFilesService;
import org.lamsfoundation.lams.tool.sbmt.service.SubmitFilesServiceProxy;
import org.lamsfoundation.lams.util.WebUtil;
@@ -75,87 +76,92 @@
ActionForm form,
HttpServletRequest request,
HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
+ Long sessionID =new Long(WebUtil.readLongParam(request,"toolSessionID"));
submitFilesService = getSubmitFilesService();
- List userList = submitFilesService.getUsers(contentID);
- request.getSession().setAttribute("contentID",contentID);
+ List userList = submitFilesService.getUsers(sessionID);
+ request.getSession().setAttribute("toolSessionID",sessionID);
request.getSession().setAttribute("USERLIST",userList);
return mapping.findForward("userlist");
}
-
- public ActionForward generateReport(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
- submitFilesService = getSubmitFilesService();
- Hashtable report = submitFilesService.generateReport(contentID);
- request.getSession().setAttribute("contentID",contentID);
- request.getSession().setAttribute("report",report);
- return mapping.findForward("report");
- }
-
- public ActionForward getStatus(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
- submitFilesService = getSubmitFilesService();
- ArrayList status = submitFilesService.getStatus(contentID);
- request.getSession().setAttribute("contentID",contentID);
- request.getSession().setAttribute("status",status);
- return mapping.findForward("status");
- }
public ActionForward getFilesUploadedByUser(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
+ Long sessionID =new Long(WebUtil.readLongParam(request,"toolSessionID"));
Long userID = new Long(WebUtil.readLongParam(request,"userID"));
submitFilesService = getSubmitFilesService();
- List report = submitFilesService.getFilesUploadedByUser(userID,contentID);
- request.getSession().setAttribute("contentID",contentID);
+ //return FileDetailsDTO list according to the given userID and sessionID
+ List files = submitFilesService.getFilesUploadedByUser(userID,sessionID);
+ request.getSession().setAttribute("toolSessionID",sessionID);
request.getSession().setAttribute("user",
submitFilesService.getUserDetails(userID));
- request.getSession().setAttribute("userReport",report);
+ request.getSession().setAttribute("userReport",files);
return mapping.findForward("userReport");
}
+ public ActionForward markFile(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response){
+ Long sessionID =new Long(WebUtil.readLongParam(request,"toolSessionID"));
+ Long userID = new Long(WebUtil.readLongParam(request,"userID"));
+ Long detailID = new Long(WebUtil.readLongParam(request,"detailID"));
+
+ submitFilesService = getSubmitFilesService();
+
+ request.getSession().setAttribute("toolSessionID",sessionID);
+ request.getSession().setAttribute("user",
+ submitFilesService.getUserDetails(userID));
+ request.getSession().setAttribute("fileDetails",
+ submitFilesService.getFileDetails(detailID));
+ return mapping.findForward("updateMarks");
+ }
public ActionForward updateMarks(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
- Long reportID =new Long(WebUtil.readLongParam(request,"reportID"));
+ Long sessionID =new Long(WebUtil.readLongParam(request,"toolSessionID"));
+ String reportIDStr = request.getParameter("reportID");
+ Long reportID = new Long(-1);
+ if(!StringUtils.isEmpty(reportIDStr))
+ reportID = Long.valueOf(reportIDStr);
+
Long marks = new Long(WebUtil.readLongParam(request,"marks"));
String comments = WebUtil.readStrParam(request,"comments");
Long userID = new Long(WebUtil.readLongParam(request,"userID"));
submitFilesService = getSubmitFilesService();
submitFilesService.updateMarks(reportID,marks,comments);
- List report = submitFilesService.getFilesUploadedByUser(userID,contentID);
+ List report = submitFilesService.getFilesUploadedByUser(userID,sessionID);
request.getSession().setAttribute("userReport",report);
- request.getSession().setAttribute("contentID",contentID);
+ request.getSession().setAttribute("toolSessionID",sessionID);
request.getSession().setAttribute("userID",userID);
return mapping.findForward("userReport");
}
- public ActionForward markFile(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response){
- Long contentID =new Long(WebUtil.readLongParam(request,"contentID"));
- Long userID = new Long(WebUtil.readLongParam(request,"userID"));
- Long detailID = new Long(WebUtil.readLongParam(request,"detailID"));
-
+ //TODO
+ public ActionForward getStatus(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response){
+ Long sessionID =new Long(WebUtil.readLongParam(request,"toolSessionID"));
+ submitFilesService = getSubmitFilesService();
+ ArrayList status = submitFilesService.getStatus(sessionID);
+ request.getSession().setAttribute("toolSessionID",sessionID);
+ request.getSession().setAttribute("status",status);
+ return mapping.findForward("status");
+ }
+ public ActionForward generateReport(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response) {
+ Long sessionID = new Long(WebUtil.readLongParam(request,
+ "toolSessionID"));
submitFilesService = getSubmitFilesService();
-
- request.getSession().setAttribute("contentID",contentID);
- request.getSession().setAttribute("user",
- submitFilesService.getUserDetails(userID));
- request.getSession().setAttribute("fileDetails",
- submitFilesService.getFileDetails(detailID));
- return mapping.findForward("updateMarks");
-}
+ Hashtable report = submitFilesService.generateReport(sessionID);
+ request.getSession().setAttribute("toolSessionID", sessionID);
+ request.getSession().setAttribute("report", report);
+ return mapping.findForward("report");
+ }
+
+
}
Index: lams_tool_sbmt/test/java/org/lamsfoundation/lams/tool/sbmt/dao/TestSubmissionDetailsDAO.java
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/test/java/org/lamsfoundation/lams/tool/sbmt/dao/TestSubmissionDetailsDAO.java (.../TestSubmissionDetailsDAO.java) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/test/java/org/lamsfoundation/lams/tool/sbmt/dao/TestSubmissionDetailsDAO.java (.../TestSubmissionDetailsDAO.java) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -73,7 +73,7 @@
}
public void testGetDistinctUser(){
- List list = submissionDetailsDAO.getUsersForContent(new Long(1));
+ List list = submissionDetailsDAO.getUsersForSession(new Long(1));
assertEquals(list.size(),3);
}
Index: lams_tool_sbmt/web/Login.jsp
===================================================================
diff -u -rdf1375bbde992f59d04ee895a971eb4dfa7282b1 -r8ad8873eb5b2b790da1c136795b0fdc9ac89027c
--- lams_tool_sbmt/web/Login.jsp (.../Login.jsp) (revision df1375bbde992f59d04ee895a971eb4dfa7282b1)
+++ lams_tool_sbmt/web/Login.jsp (.../Login.jsp) (revision 8ad8873eb5b2b790da1c136795b0fdc9ac89027c)
@@ -21,7 +21,7 @@