Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/model/McSession.java =================================================================== diff -u -rb0523a63bf120c687d9b50748f4221f8d54aefea -r6ce1b949a486cdf029290566855cb29626ed0818 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/model/McSession.java (.../McSession.java) (revision b0523a63bf120c687d9b50748f4221f8d54aefea) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/model/McSession.java (.../McSession.java) (revision 6ce1b949a486cdf029290566855cb29626ed0818) @@ -25,7 +25,9 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.Date; +import java.util.HashSet; import java.util.List; +import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Column; @@ -83,51 +85,51 @@ private org.lamsfoundation.lams.tool.mc.model.McContent mcContent; @OneToMany(mappedBy = "mcSession", cascade = CascadeType.ALL, orphanRemoval = true) - private List mcQueUsers; + private Set mcQueUsers = new HashSet<>(); @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "mc_group_leader_uid") private McQueUsr groupLeader; /** full constructor */ public McSession(Long mcSessionId, Date sessionStartDate, Date sessionEndDate, String sessionStatus, - org.lamsfoundation.lams.tool.mc.model.McContent mcContent, List mcQueUsers) { + org.lamsfoundation.lams.tool.mc.model.McContent mcContent, Set mcQueUsers) { this.mcSessionId = mcSessionId; this.sessionStartDate = sessionStartDate; this.sessionEndDate = sessionEndDate; this.sessionStatus = sessionStatus; this.mcContent = mcContent; - this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new ArrayList<>(); + this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new HashSet<>(); } public McSession(Long mcSessionId, Date sessionStartDate, String sessionStatus, String session_name, - org.lamsfoundation.lams.tool.mc.model.McContent mcContent, List mcQueUsers) { + org.lamsfoundation.lams.tool.mc.model.McContent mcContent, Set mcQueUsers) { this.mcSessionId = mcSessionId; this.sessionStartDate = sessionStartDate; this.sessionStatus = sessionStatus; this.session_name = session_name; this.mcContent = mcContent; - this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new ArrayList<>(); + this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new HashSet<>(); } public McSession(Long mcSessionId, Date sessionStartDate, String sessionStatus, - org.lamsfoundation.lams.tool.mc.model.McContent mcContent, List mcQueUsers) { + org.lamsfoundation.lams.tool.mc.model.McContent mcContent, Set mcQueUsers) { this.mcSessionId = mcSessionId; this.sessionStartDate = sessionStartDate; this.sessionStatus = sessionStatus; this.mcContent = mcContent; - this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new ArrayList<>(); + this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new HashSet<>(); } /** default constructor */ public McSession() { - this.mcQueUsers = new ArrayList<>(); + this.mcQueUsers = new HashSet<>(); } /** minimal constructor */ - public McSession(Long mcSessionId, List mcQueUsers) { + public McSession(Long mcSessionId, Set mcQueUsers) { this.mcSessionId = mcSessionId; - this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new ArrayList<>(); + this.mcQueUsers = mcQueUsers != null ? mcQueUsers : new HashSet<>(); } public Long getUid() { @@ -208,15 +210,15 @@ * @return Returns the mcQueUsers. */ - public List getMcQueUsers() { + public Set getMcQueUsers() { return this.mcQueUsers; } /** * @param mcQueUsers * The mcQueUsers to set. */ - public void setMcQueUsers(List mcQueUsers) { + public void setMcQueUsers(Set mcQueUsers) { this.mcQueUsers = mcQueUsers; } Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java =================================================================== diff -u -rb0523a63bf120c687d9b50748f4221f8d54aefea -r6ce1b949a486cdf029290566855cb29626ed0818 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision b0523a63bf120c687d9b50748f4221f8d54aefea) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/service/McService.java (.../McService.java) (revision 6ce1b949a486cdf029290566855cb29626ed0818) @@ -535,7 +535,7 @@ mcSessionMarkDTO.setSessionId(session.getMcSessionId().toString()); mcSessionMarkDTO.setSessionName(session.getSession_name().toString()); - List sessionUsers = session.getMcQueUsers(); + Set sessionUsers = session.getMcQueUsers(); Iterator usersIterator = sessionUsers.iterator(); Map mapSessionUsersData = new TreeMap( @@ -842,7 +842,7 @@ Set sessionList = content.getMcSessions(); for (McSession session : sessionList) { Long toolSessionId = session.getMcSessionId(); - List sessionUsers = session.getMcQueUsers(); + Set sessionUsers = session.getMcQueUsers(); for (McQueUsr user : sessionUsers) { @@ -1414,7 +1414,7 @@ if (!existsSession(toolSessionId)) { try { McSession mcSession = new McSession(toolSessionId, new Date(System.currentTimeMillis()), - McSession.INCOMPLETE, toolSessionName, mcContent, new ArrayList()); + McSession.INCOMPLETE, toolSessionName, mcContent, new HashSet()); mcSessionDAO.saveMcSession(mcSession); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/McLearningController.java =================================================================== diff -u -rb0523a63bf120c687d9b50748f4221f8d54aefea -r6ce1b949a486cdf029290566855cb29626ed0818 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/McLearningController.java (.../McLearningController.java) (revision b0523a63bf120c687d9b50748f4221f8d54aefea) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/McLearningController.java (.../McLearningController.java) (revision 6ce1b949a486cdf029290566855cb29626ed0818) @@ -29,6 +29,7 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.TimeZone; import java.util.TreeMap; @@ -241,7 +242,7 @@ // forwards to the leaderSelection page if (groupLeader == null && !mode.equals(ToolAccessMode.TEACHER.toString())) { - List groupUsers = mcSession.getMcQueUsers();// mcService.getUsersBySession(new + Set groupUsers = mcSession.getMcQueUsers();// mcService.getUsersBySession(new // Long(toolSessionID).longValue()); request.setAttribute(McAppConstants.ATTR_GROUP_USERS, groupUsers); request.setAttribute(McAppConstants.TOOL_SESSION_ID, toolSessionID);