Return-Path: X-Original-To: apmail-incubator-openmeetings-commits-archive@minotaur.apache.org Delivered-To: apmail-incubator-openmeetings-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 77F23DDB6 for ; Sun, 20 Jan 2013 00:56:50 +0000 (UTC) Received: (qmail 88450 invoked by uid 500); 20 Jan 2013 00:56:50 -0000 Delivered-To: apmail-incubator-openmeetings-commits-archive@incubator.apache.org Received: (qmail 88417 invoked by uid 500); 20 Jan 2013 00:56:50 -0000 Mailing-List: contact openmeetings-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: openmeetings-dev@incubator.apache.org Delivered-To: mailing list openmeetings-commits@incubator.apache.org Received: (qmail 88410 invoked by uid 99); 20 Jan 2013 00:56:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 20 Jan 2013 00:56:50 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 20 Jan 2013 00:56:48 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 9ABE823889F7; Sun, 20 Jan 2013 00:56:29 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1435774 [2/2] - in /incubator/openmeetings/trunk/singlewebapp: WebContent/WEB-INF/ src/META-INF/ src/org/apache/openmeetings/axis/services/ src/org/apache/openmeetings/backup/ src/org/apache/openmeetings/data/calendar/management/ src/org/a... Date: Sun, 20 Jan 2013 00:56:28 -0000 To: openmeetings-commits@incubator.apache.org From: sebawagner@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20130120005629.9ABE823889F7@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/session/IClientSession.java URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/session/IClientSession.java?rev=1435774&r1=1435773&r2=1435774&view=diff ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/session/IClientSession.java (original) +++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/session/IClientSession.java Sun Jan 20 00:56:27 2013 @@ -1,9 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License") + you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ package org.apache.openmeetings.session; import java.util.Date; -import java.util.List; +import org.red5.server.api.IClient; +/** + * holds information about the current rtmp connection. + * Each rtmp connection has its own {@link IClientSession}. + * So each conference session might have multiple connections. + * + * There are different implementations of the storage of this object. + * + * @author sebawagner + * + */ public interface IClientSession { public abstract void setUserObject(Long user_id, String username, @@ -16,14 +44,26 @@ public interface IClientSession { public abstract void setConnectedSince(Date connectedSince); + /** + * true indicates that this user is Moderating + * in Events rooms (only 1 Video) this means that this user is currently + * sharing its video/audio + * + */ public abstract Boolean getIsMod(); public abstract void setIsMod(Boolean isMod); + /** + * login name + */ public abstract String getUsername(); public abstract void setUsername(String username); + /** + * a unique id generated by red5, this is the FK key and link to the {@link IClient} + */ public abstract String getStreamid(); public abstract void setStreamid(String streamid); @@ -40,10 +80,18 @@ public interface IClientSession { public abstract void setUsercolor(String usercolor); + /** + * no longer needed since broadCastId is now the new unique id + * @deprecated + */ public abstract Integer getUserpos(); public abstract void setUserpos(Integer userpos); + /** + * client IP + */ + // FIXME: Move to {@link ClientSession} public abstract String getUserip(); public abstract void setUserip(String userip); @@ -52,6 +100,9 @@ public interface IClientSession { public abstract void setSwfurl(String swfurl); + /** + * client Port + */ public abstract int getUserport(); public abstract void setUserport(int userport); @@ -84,10 +135,19 @@ public interface IClientSession { public abstract void setPicture_uri(String picture_uri); + /** + * some vars _not_ directly connected to the user-record from the database + * cause a user is not _forced_ to login he can also be an invited user, so user_id + * might be null or 0 even if somebody is already in a conference room + * + */ public abstract Long getUser_id(); public abstract void setUser_id(Long user_id); + /** + * current room id while conferencing + */ public abstract Long getRoom_id(); public abstract void setRoom_id(Long room_id); @@ -104,18 +164,46 @@ public interface IClientSession { public abstract void setRoomRecordingName(String roomRecordingName); + /** + * avsettings can be: + * av - video and audio + * a - audio only + * v - video only + * n - no av only static Image + */ public abstract String getAvsettings(); public abstract void setAvsettings(String avsettings); + /** + * this is the id this user is currently using to broadcast a stream + * default value is -2 cause otherwise this can due to disconnect + */ public abstract long getBroadCastID(); public abstract void setBroadCastID(long broadCastID); + /** + * an unique PUBLIC id, + * this ID is needed as people can reconnect and will get a new + * streamid, but we need to know if this is still the same user + * this Public ID can be changing also if the user does change the + * security token (private SID) + * the private Session ID is not written to the RoomClient-Class + * as every instance of the RoomClient is send to all connected users + * + * publicSID can be empty if a audio/video user is connected but + * didn't choose any device settings or the connection really just + * has been initialized + */ public abstract String getPublicSID(); public abstract void setPublicSID(String publicSID); + /** + * Zombie Flag + * @return + */ public abstract Boolean getZombieCheckFlag(); public abstract void setZombieCheckFlag(Boolean zombieCheckFlag); @@ -128,6 +216,10 @@ public interface IClientSession { public abstract void setCanDraw(Boolean canDraw); + /** + * Indicates if this User is broadcasting his stream at all + * Only interesting in the Event Modus + */ public abstract Boolean getIsBroadcasting(); public abstract void setIsBroadcasting(Boolean isBroadcasting); @@ -136,18 +228,22 @@ public interface IClientSession { public abstract void setCanShare(Boolean canShare); + /** + * Vars to simulate external Users + * @return + */ public abstract String getExternalUserId(); public abstract void setExternalUserId(String externalUserId); + /** + * Vars to simulate external Users + * @return + */ public abstract String getExternalUserType(); public abstract void setExternalUserType(String externalUserType); - public abstract List getSharerSIDs(); - - public abstract void setSharerSIDs(List sharerSIDs); - public abstract Boolean getIsSuperModerator(); public abstract void setIsSuperModerator(Boolean isSuperModerator); @@ -172,6 +268,9 @@ public interface IClientSession { public abstract void setVY(int vy); + /** + * StreamPublishName is used in the screen sharing client to publish the stream + */ public abstract String getStreamPublishName(); public abstract void setStreamPublishName(String streamPublishName); @@ -200,6 +299,10 @@ public interface IClientSession { public abstract void setStartStreaming(boolean startStreaming); + /** + * Session values for handling the Interviwe Room Type + * @return + */ public abstract Integer getInterviewPodId(); public abstract void setInterviewPodId(Integer interviewPodId); @@ -217,8 +320,12 @@ public interface IClientSession { public abstract void setAllowRecording(Boolean allowRecording); /** - * @see Client#isAVClient - * @return + * If true this client is only used to stream audio/video events, + * he should not receive any sync events / push messages
+ *
+ * true the user is an audio/video connection
+ * false the user is a regular user with full session object
+ * */ public abstract boolean getIsAVClient(); Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/rooms/RoomsPanel.java URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/rooms/RoomsPanel.java?rev=1435774&r1=1435773&r2=1435774&view=diff ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/rooms/RoomsPanel.java (original) +++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/rooms/RoomsPanel.java Sun Jan 20 00:56:27 2013 @@ -18,7 +18,7 @@ */ package org.apache.openmeetings.web.components.admin.rooms; -import org.apache.openmeetings.data.conference.RoomDAO; +import org.apache.openmeetings.data.conference.dao.RoomDao; import org.apache.openmeetings.persistence.beans.rooms.Rooms; import org.apache.openmeetings.web.components.admin.AdminPanel; import org.apache.openmeetings.web.components.admin.SearchableDataView; @@ -46,7 +46,7 @@ public class RoomsPanel extends AdminPan @SuppressWarnings("unchecked") public RoomsPanel(String id) { super(id); - SearchableDataView dataView = new SearchableDataView("roomList", new SearchableDataProvider(RoomDAO.class)) { + SearchableDataView dataView = new SearchableDataView("roomList", new SearchableDataProvider(RoomDao.class)) { private static final long serialVersionUID = 8715559628755439596L; @Override Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/calendar/CalendarForm.java URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/calendar/CalendarForm.java?rev=1435774&r1=1435773&r2=1435774&view=diff ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/calendar/CalendarForm.java (original) +++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/calendar/CalendarForm.java Sun Jan 20 00:56:27 2013 @@ -22,8 +22,8 @@ import java.util.ArrayList; import java.util.List; import org.apache.openmeetings.data.calendar.daos.AppointmentReminderTypDao; -import org.apache.openmeetings.data.conference.RoomDAO; import org.apache.openmeetings.data.conference.Roommanagement; +import org.apache.openmeetings.data.conference.dao.RoomDao; import org.apache.openmeetings.data.user.dao.UsersDao; import org.apache.openmeetings.persistence.beans.calendar.Appointment; import org.apache.openmeetings.persistence.beans.calendar.AppointmentReminderTyps; @@ -112,7 +112,7 @@ public class CalendarForm extends Form getRoomList() { //FIXME need to be reviewed List result = new ArrayList(); - RoomDAO dao = Application.getBean(RoomDAO.class); + RoomDao dao = Application.getBean(RoomDao.class); result.addAll(dao.getPublicRooms()); for (Organisation_Users ou : Application.getBean(UsersDao.class).get(WebSession.getUserId()).getOrganisation_users()) { result.addAll(dao.getOrganisationRooms(ou.getOrganisation().getOrganisation_id()));