use of org.apache.openmeetings.db.entity.log.ConferenceLog in project openmeetings by apache.
the class ConferenceLogDao method add.
public ConferenceLog add(Type type, Long userId, String streamid, Long roomId, String userip, String scopeName) {
ConferenceLog confLog = new ConferenceLog();
confLog.setType(type);
confLog.setInserted(new Date());
confLog.setUserId(userId);
confLog.setStreamid(streamid);
confLog.setScopeName(scopeName);
confLog.setRoomId(roomId);
confLog.setUserip(userip);
em.persist(confLog);
log.debug("[addConferenceLog]: " + confLog);
return confLog;
}
use of org.apache.openmeetings.db.entity.log.ConferenceLog in project openmeetings by apache.
the class RoomDao method getRecent.
public List<Room> getRecent(Long userId) {
List<Room> result = new ArrayList<>();
Set<Long> ids = new HashSet<>();
// (RECENT_ROOMS_COUNT + 1) passes required to preserve the order :(
for (ConferenceLog l : em.createNamedQuery("getLogRecentRooms", ConferenceLog.class).setParameter("roomEnter", ConferenceLog.Type.roomEnter).setParameter(PARAM_USER_ID, userId).getResultList()) {
if (!ids.contains(l.getRoomId())) {
Room r = get(l.getRoomId());
if (r != null && !r.isDeleted()) {
result.add(r);
ids.add(r.getId());
}
}
if (ids.size() == RECENT_ROOMS_COUNT) {
break;
}
}
return result;
}
Aggregations