use of org.apache.openmeetings.axis.services.RoomServicePortType 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;
}
}
use of org.apache.openmeetings.axis.services.RoomServicePortType in project openolat by klemens.
the class OpenMeetingsManagerImpl method getRoomById.
private OpenMeetingsRoom getRoomById(String sid, OpenMeetingsRoom room, long roomId) throws OpenMeetingsException {
try {
RoomServicePortType roomWs = getRoomWebService();
Room omRoom = roomWs.getRoomById(sid, roomId);
if (omRoom != null) {
room.setComment(omRoom.getComment());
if (omRoom.isIsModeratedRoom() != null) {
room.setModerated(omRoom.isIsModeratedRoom());
}
if (omRoom.isIsAudioOnly() != null) {
room.setAudioOnly(omRoom.isIsAudioOnly());
}
room.setName(omRoom.getName());
if (omRoom.getRoomsId() != null) {
room.setRoomId(omRoom.getRoomsId());
} else {
room.setRoomId(roomId);
}
room.setSize(omRoom.getNumberOfPartizipants());
room.setType(omRoom.getRoomtype().getRoomtypesId());
room.setClosed(omRoom.isIsClosed());
return room;
} else {
return null;
}
} catch (Exception e) {
log.error("", e);
throw translateException(e, 0);
}
}
use of org.apache.openmeetings.axis.services.RoomServicePortType in project openolat by klemens.
the class OpenMeetingsManagerImpl method deleteRoom.
@Override
public boolean deleteRoom(OpenMeetingsRoom room) {
try {
String adminSID = adminLogin();
RoomServicePortType roomWs = getRoomWebService();
long ret = roomWs.deleteRoom(adminSID, room.getRoomId());
boolean ok = ret > 0;
if (ok && room.getReference() != null) {
openMeetingsDao.delete(room.getReference());
}
return ok;
} catch (Exception e) {
log.error("", e);
return false;
}
}
use of org.apache.openmeetings.axis.services.RoomServicePortType in project openolat by klemens.
the class OpenMeetingsManagerImpl method getRoomWebService.
private final RoomServicePortType getRoomWebService() {
RoomService ss = new RoomService();
RoomServicePortType port = ss.getRoomServiceHttpSoap11Endpoint();
String endPoint = getOpenMeetingsEndPoint() + "RoomService?wsdl";
((BindingProvider) port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, endPoint);
return port;
}
use of org.apache.openmeetings.axis.services.RoomServicePortType in project openolat by klemens.
the class OpenMeetingsManagerImpl method getRecordings.
@Override
public List<OpenMeetingsRecording> getRecordings(long roomId) throws OpenMeetingsException {
try {
String adminSID = adminLogin();
RoomServicePortType roomWs = getRoomWebService();
List<FlvRecording> recordings = roomWs.getFlvRecordingByRoomId(adminSID, roomId);
List<OpenMeetingsRecording> recList = new ArrayList<OpenMeetingsRecording>();
if (recordings != null) {
for (FlvRecording recording : recordings) {
if (recording != null) {
OpenMeetingsRecording rec = new OpenMeetingsRecording();
rec.setRoomId(recording.getRoomId());
rec.setRecordingId(recording.getFlvRecordingId());
rec.setFilename(recording.getFileName());
rec.setDownloadName(recording.getFileHash());
rec.setDownloadNameAlt(recording.getAlternateDownload());
rec.setPreviewImage(recording.getPreviewImage());
rec.setWidth(recording.getFlvWidth());
rec.setHeight(recording.getFlvHeight());
recList.add(rec);
}
}
}
return recList;
} catch (Exception e) {
log.error("", e);
throw translateException(e, 0);
}
}
Aggregations