use of org.olat.modules.openmeetings.model.RoomReturnInfo in project openolat by klemens.
the class OpenMeetingsManagerImpl method getOpenOLATRooms.
@Override
public List<OpenMeetingsRoom> getOpenOLATRooms() {
try {
String adminSID = adminLogin();
RoomServicePortType roomWs = getRoomWebService();
GetRoomsWithCurrentUsersByListAndType getRooms = new GetRoomsWithCurrentUsersByListAndType();
getRooms.setAsc(true);
getRooms.setExternalRoomType(getOpenOLATExternalType());
getRooms.setOrderby("name");
getRooms.setStart(0);
getRooms.setMax(2000);
getRooms.setSID(adminSID);
Map<Long, RoomReturnInfo> realRooms = new HashMap<Long, RoomReturnInfo>();
// get rooms on openmeetings
List<RoomReturn> roomsRet = roomWs.getRoomsWithCurrentUsersByListAndType(adminSID, 0, 2000, "name", true, getOpenOLATExternalType());
if (roomsRet != null) {
for (RoomReturn roomRet : roomsRet) {
RoomReturnInfo info = new RoomReturnInfo();
info.setName(roomRet.getName());
info.setRoomId(roomRet.getRoomId());
int numOfUsers = 0;
if (roomRet.getRoomUser() != null) {
for (RoomUser user : roomRet.getRoomUser()) {
if (user != null) {
numOfUsers++;
}
}
}
info.setNumOfUsers(numOfUsers);
realRooms.put(new Long(roomRet.getRoomId()), info);
}
}
// get properties saved
List<OpenMeetingsRoomReference> props = openMeetingsDao.getReferences();
Map<Long, String> roomIdToResources = getResourceNames(props);
List<OpenMeetingsRoom> rooms = new ArrayList<OpenMeetingsRoom>();
for (OpenMeetingsRoomReference prop : props) {
Long roomId = new Long(prop.getRoomId());
RoomReturnInfo infos = realRooms.get(roomId);
if (infos != null) {
OpenMeetingsRoom room = openMeetingsDao.deserializeRoom(prop.getConfig());
room.setReference(prop);
room.setName(infos.getName());
room.setNumOfUsers(infos.getNumOfUsers());
String resourceName = roomIdToResources.get(roomId);
if (resourceName != null) {
room.setResourceName(resourceName);
}
rooms.add(room);
}
}
return rooms;
} catch (Exception e) {
log.error("", e);
return null;
}
}
use of org.olat.modules.openmeetings.model.RoomReturnInfo in project OpenOLAT by OpenOLAT.
the class OpenMeetingsManagerImpl method getOpenOLATRooms.
@Override
public List<OpenMeetingsRoom> getOpenOLATRooms() {
try {
String adminSID = adminLogin();
RoomServicePortType roomWs = getRoomWebService();
GetRoomsWithCurrentUsersByListAndType getRooms = new GetRoomsWithCurrentUsersByListAndType();
getRooms.setAsc(true);
getRooms.setExternalRoomType(getOpenOLATExternalType());
getRooms.setOrderby("name");
getRooms.setStart(0);
getRooms.setMax(2000);
getRooms.setSID(adminSID);
Map<Long, RoomReturnInfo> realRooms = new HashMap<Long, RoomReturnInfo>();
// get rooms on openmeetings
List<RoomReturn> roomsRet = roomWs.getRoomsWithCurrentUsersByListAndType(adminSID, 0, 2000, "name", true, getOpenOLATExternalType());
if (roomsRet != null) {
for (RoomReturn roomRet : roomsRet) {
RoomReturnInfo info = new RoomReturnInfo();
info.setName(roomRet.getName());
info.setRoomId(roomRet.getRoomId());
int numOfUsers = 0;
if (roomRet.getRoomUser() != null) {
for (RoomUser user : roomRet.getRoomUser()) {
if (user != null) {
numOfUsers++;
}
}
}
info.setNumOfUsers(numOfUsers);
realRooms.put(new Long(roomRet.getRoomId()), info);
}
}
// get properties saved
List<OpenMeetingsRoomReference> props = openMeetingsDao.getReferences();
Map<Long, String> roomIdToResources = getResourceNames(props);
List<OpenMeetingsRoom> rooms = new ArrayList<OpenMeetingsRoom>();
for (OpenMeetingsRoomReference prop : props) {
Long roomId = new Long(prop.getRoomId());
RoomReturnInfo infos = realRooms.get(roomId);
if (infos != null) {
OpenMeetingsRoom room = openMeetingsDao.deserializeRoom(prop.getConfig());
room.setReference(prop);
room.setName(infos.getName());
room.setNumOfUsers(infos.getNumOfUsers());
String resourceName = roomIdToResources.get(roomId);
if (resourceName != null) {
room.setResourceName(resourceName);
}
rooms.add(room);
}
}
return rooms;
} catch (Exception e) {
log.error("", e);
return null;
}
}
Aggregations