Author: sebawagner
Date: Sun Oct 28 10:48:08 2012
New Revision: 1402968
URL: http://svn.apache.org/viewvc?rev=1402968&view=rev
Log:
OPENMEETINGS-455 Make ClientList as interface and provide alternative
implementation
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListDatabaseStore.java
- copied, changed from r1388584,
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListManager.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListHashMapStore.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/IClientList.java
Removed:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListManager.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Sessionmanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Roommanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Usermanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ChatService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceLibrary.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/FLVRecorderService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/MainService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/PollService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/WhiteBoardService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/ScreenController.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/test/poll/TestClientListManager.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
Sun Oct 28 10:48:08 2012
@@ -51,7 +51,7 @@
<!-- New Class for the Streaming Handlers -->
<bean id="web.handler"
class="org.apache.openmeetings.remote.red5.ScopeApplicationAdapter" />
- <bean id="openmeetings.ClientListManager"
class="org.apache.openmeetings.remote.red5.ClientListManager" />
+ <bean id="openmeetings.ClientListManager"
class="org.apache.openmeetings.remote.red5.ClientListDatabaseStore" />
<bean id="openmeetings.EmoticonsManager"
class="org.apache.openmeetings.remote.red5.EmoticonsManager" />
<bean id="openmeetings.WhiteBoardObjectListManager"
class="org.apache.openmeetings.remote.red5.WhiteBoardObjectListManager" />
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
Sun Oct 28 10:48:08 2012
@@ -46,7 +46,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.rooms.Rooms;
import org.apache.openmeetings.persistence.beans.user.Users;
import org.apache.openmeetings.remote.ConferenceService;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.utils.math.CalendarPatterns;
import org.red5.logging.Red5LoggerFactory;
@@ -84,7 +84,7 @@ public class RoomWebService {
@Autowired
private ConferenceService conferenceService;
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private MeetingMemberLogic meetingMemberLogic;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Sessionmanagement.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Sessionmanagement.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Sessionmanagement.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Sessionmanagement.java
Sun Oct 28 10:48:08 2012
@@ -34,7 +34,7 @@ import javax.persistence.criteria.Root;
import org.apache.openmeetings.OpenmeetingsVariables;
import org.apache.openmeetings.persistence.beans.basic.Sessiondata;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.utils.crypt.ManageCryptStyle;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
@@ -59,7 +59,7 @@ public class Sessionmanagement {
@Autowired
private ManageCryptStyle manageCryptStyle;
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
/**
* creates a new session-object in the database
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Roommanagement.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Roommanagement.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Roommanagement.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Roommanagement.java
Sun Oct 28 10:48:08 2012
@@ -45,7 +45,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.rooms.Rooms_Organisation;
import org.apache.openmeetings.persistence.beans.sip.OpenXGReturnObject;
import org.apache.openmeetings.persistence.beans.user.Users;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.sip.api.impl.asterisk.AsteriskDbSipClient;
import org.apache.openmeetings.sip.api.request.SIPCreateConferenceRequest;
import org.apache.openmeetings.sip.api.result.SipCreateConferenceRequestResult;
@@ -82,7 +82,7 @@ public class Roommanagement {
@Autowired
private AuthLevelmanagement authLevelManagement;
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private ConfigurationDao configurationDaoImpl;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Usermanagement.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Usermanagement.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Usermanagement.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Usermanagement.java
Sun Oct 28 10:48:08 2012
@@ -58,7 +58,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.user.Userdata;
import org.apache.openmeetings.persistence.beans.user.Userlevel;
import org.apache.openmeetings.persistence.beans.user.Users;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.sip.xmlrpc.OpenXGHttpClient;
import org.apache.openmeetings.templates.ResetPasswordTemplate;
@@ -118,7 +118,7 @@ public class Usermanagement {
@Autowired
private AuthLevelmanagement authLevelManagement;
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private ServerDao serverDao;
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ChatService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ChatService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ChatService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ChatService.java
Sun Oct 28 10:48:08 2012
@@ -31,8 +31,8 @@ import java.util.Set;
import org.apache.openmeetings.OpenmeetingsVariables;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
import org.apache.openmeetings.remote.red5.EmoticonsManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.utils.stringhandlers.ChatString;
import org.red5.logging.Red5LoggerFactory;
@@ -55,7 +55,7 @@ public class ChatService implements IPen
@Autowired
private ScopeApplicationAdapter scopeApplicationAdapter;
@Autowired
- private ClientListManager clientListManager = null;
+ private IClientList clientListManager = null;
@Autowired
private EmoticonsManager emoticonsManager;
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceLibrary.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceLibrary.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceLibrary.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceLibrary.java
Sun Oct 28 10:48:08 2012
@@ -41,7 +41,7 @@ import org.apache.openmeetings.documents
import org.apache.openmeetings.documents.LoadLibraryPresentation;
import org.apache.openmeetings.persistence.beans.files.FileExplorerItem;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.utils.OmFileHelper;
import org.apache.openmeetings.utils.crypt.MD5;
import org.red5.logging.Red5LoggerFactory;
@@ -64,7 +64,7 @@ public class ConferenceLibrary implement
ConferenceLibrary.class,
OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager = null;
+ private IClientList clientListManager = null;
@Autowired
private Sessionmanagement sessionManagement;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
Sun Oct 28 10:48:08 2012
@@ -44,7 +44,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.rooms.Rooms;
import org.apache.openmeetings.persistence.beans.rooms.Rooms_Organisation;
import org.apache.openmeetings.persistence.beans.user.Users;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.utils.math.CalendarPatterns;
import org.apache.openmeetings.utils.math.TimezoneUtil;
import org.red5.logging.Red5LoggerFactory;
@@ -80,7 +80,7 @@ public class ConferenceService {
@Autowired
private TimezoneUtil timezoneUtil;
@Autowired
- private ClientListManager clientListManager = null;
+ private IClientList clientListManager = null;
@Autowired
private ServerDao serverDao;
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/FLVRecorderService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/FLVRecorderService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/FLVRecorderService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/FLVRecorderService.java
Sun Oct 28 10:48:08 2012
@@ -47,7 +47,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.flvrecord.FlvRecordingLog;
import
org.apache.openmeetings.persistence.beans.flvrecord.FlvRecordingMetaData;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.utils.OmFileHelper;
import org.apache.openmeetings.utils.math.CalendarPatterns;
@@ -80,7 +80,7 @@ public class FLVRecorderService implemen
// Spring Beans
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private FlvRecordingDao flvRecordingDaoImpl;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/MainService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/MainService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/MainService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/MainService.java
Sun Oct 28 10:48:08 2012
@@ -54,7 +54,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
import org.apache.openmeetings.persistence.beans.user.Userdata;
import org.apache.openmeetings.persistence.beans.user.Users;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.rss.LoadAtomRssFeed;
import org.red5.logging.Red5LoggerFactory;
@@ -79,7 +79,7 @@ public class MainService implements IPen
private static final Logger log =
Red5LoggerFactory.getLogger(MainService.class,
OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private ScopeApplicationAdapter scopeApplicationAdapter;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/PollService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/PollService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/PollService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/PollService.java
Sun Oct 28 10:48:08 2012
@@ -30,7 +30,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.poll.RoomPoll;
import org.apache.openmeetings.persistence.beans.poll.RoomPollAnswers;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.red5.logging.Red5LoggerFactory;
import org.red5.server.api.IConnection;
@@ -52,7 +52,7 @@ public class PollService implements IPen
PollService.class, OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private Usermanagement usermanagement;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
Sun Oct 28 10:48:08 2012
@@ -57,7 +57,7 @@ import org.apache.openmeetings.persisten
import org.apache.openmeetings.persistence.beans.user.Salutations;
import org.apache.openmeetings.persistence.beans.user.UserContacts;
import org.apache.openmeetings.persistence.beans.user.Users;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.templates.RequestContactConfirmTemplate;
import org.apache.openmeetings.templates.RequestContactTemplate;
@@ -82,7 +82,7 @@ public class UserService {
UserService.class, OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private ScopeApplicationAdapter scopeApplicationAdapter;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/WhiteBoardService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/WhiteBoardService.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/WhiteBoardService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/WhiteBoardService.java
Sun Oct 28 10:48:08 2012
@@ -37,7 +37,7 @@ import org.apache.openmeetings.data.basi
import org.apache.openmeetings.data.basic.Sessionmanagement;
import org.apache.openmeetings.data.user.Usermanagement;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.remote.red5.WhiteBoardObjectListManager;
import org.apache.openmeetings.remote.red5.WhiteBoardObjectListManagerById;
@@ -65,7 +65,7 @@ public class WhiteBoardService implement
@Autowired
private final ScopeApplicationAdapter scopeApplicationAdapter = null;
@Autowired
- private final ClientListManager clientListManager = null;
+ private final IClientList clientListManager = null;
@Autowired
private final WhiteBoardObjectListManager whiteBoardObjectListManager =
null;
@Autowired
Copied:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListDatabaseStore.java
(from r1388584,
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListManager.java)
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListDatabaseStore.java?p2=incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListDatabaseStore.java&p1=incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListManager.java&r1=1388584&r2=1402968&rev=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListManager.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListDatabaseStore.java
Sun Oct 28 10:48:08 2012
@@ -37,9 +37,9 @@ import org.springframework.beans.factory
import org.springframework.transaction.annotation.Transactional;
@Transactional
-public class ClientListManager {
+public class ClientListDatabaseStore implements IClientList {
private static final Logger log = Red5LoggerFactory.getLogger(
- ClientListManager.class,
OpenmeetingsVariables.webAppRootKey);
+ ClientListDatabaseStore.class,
OpenmeetingsVariables.webAppRootKey);
@PersistenceContext
private EntityManager em;
@@ -47,17 +47,16 @@ public class ClientListManager {
@Autowired
private ManageCryptStyle manageCryptStyle;
- /**
- * Get current clients and extends the room client with its potential
- * audio/video client and settings
- *
- * @param room_id
- * @return
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getRoomClients(java.lang.Long)
*/
public List<RoomClient> getRoomClients(Long room_id) {
return getClientListByRoom(room_id);
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#addClientListItem(java.lang.String,
java.lang.String, java.lang.Integer, java.lang.String, java.lang.String,
boolean)
+ */
public RoomClient addClientListItem(String streamId,
String scopeName, Integer remotePort, String
remoteAddress,
String swfUrl, boolean isAVClient) {
@@ -95,11 +94,17 @@ public class ClientListManager {
return null;
}
+ /* (non-Javadoc)
+ * @see org.apache.openmeetings.remote.red5.IClientList#getAllClients()
+ */
public Collection<RoomClient> getAllClients() {
TypedQuery<RoomClient> q =
em.createNamedQuery("getAllRoomClients", RoomClient.class);
return q.getResultList();
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getClientByStreamId(java.lang.String)
+ */
public RoomClient getClientByStreamId(String streamId) {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("getByStreamId", RoomClient.class);
@@ -116,15 +121,8 @@ public class ClientListManager {
return null;
}
- /**
- * Additionally checks if the client receives sync events
- *
- * Sync events will no be broadcasted to:
- * - Screensharing users
- * - Audio/Video connections only
- *
- * @param streamId
- * @return
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getSyncClientByStreamId(java.lang.String)
*/
public RoomClient getSyncClientByStreamId(String streamId) {
try {
@@ -142,6 +140,9 @@ public class ClientListManager {
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getClientByPublicSID(java.lang.String,
boolean)
+ */
public RoomClient getClientByPublicSID(String publicSID, boolean
isAVClient) {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("getByPublicSidAvClient", RoomClient.class);
@@ -156,6 +157,9 @@ public class ClientListManager {
return null;
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getClientByUserId(java.lang.Long)
+ */
public RoomClient getClientByUserId(Long userId) {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("getByUserId", RoomClient.class);
@@ -169,12 +173,8 @@ public class ClientListManager {
return null;
}
- /**
- * Update the session object of the audio/video-connection and
additionally swap the
- * values to the session object of the user that holds the full session
object
- * @param streamId
- * @param rcm
- * @return
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#updateAVClientByStreamId(java.lang.String,
org.apache.openmeetings.persistence.beans.rooms.RoomClient)
*/
public Boolean updateAVClientByStreamId(String streamId, RoomClient
rcm) {
try {
@@ -197,6 +197,9 @@ public class ClientListManager {
return null;
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#updateClientByStreamId(java.lang.String,
org.apache.openmeetings.persistence.beans.rooms.RoomClient)
+ */
public Boolean updateClientByStreamId(String streamId, RoomClient rcm) {
try {
if (getClientByStreamId(streamId) != null) {
@@ -212,6 +215,9 @@ public class ClientListManager {
return null;
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#removeClient(java.lang.String)
+ */
public Boolean removeClient(String streamId) {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("deleteByStreamId", RoomClient.class);
@@ -224,13 +230,8 @@ public class ClientListManager {
return null;
}
- /**
- * Get all ClientList Objects of that room and domain This Function is
- * needed cause it is invoked internally AFTER the current user has been
- * already removed from the ClientList to see if the Room is empty
again and
- * the PollList can be removed
- *
- * @return
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getClientListByRoom(java.lang.Long)
*/
public List<RoomClient> getClientListByRoom(Long room_id) {
try {
@@ -246,6 +247,9 @@ public class ClientListManager {
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getClientListByRoomAll(java.lang.Long)
+ */
public List<RoomClient> getClientListByRoomAll(Long room_id) {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("getByRoomIdAll", RoomClient.class);
@@ -258,11 +262,8 @@ public class ClientListManager {
return new ArrayList<RoomClient>();
}
- /**
- * get the current Moderator in this room
- *
- * @param roomname
- * @return
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getCurrentModeratorByRoom(java.lang.Long)
*/
public List<RoomClient> getCurrentModeratorByRoom(Long room_id) {
if (room_id != null) {
@@ -274,6 +275,9 @@ public class ClientListManager {
}
//FIXME not sorted
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getListByStartAndMax(int, int,
java.lang.String, boolean)
+ */
public SearchResult<RoomClient> getListByStartAndMax(int start, int
max, String orderby, boolean asc) {
SearchResult<RoomClient> sResult = new
SearchResult<RoomClient>();
sResult.setObjectName(RoomClient.class.getName());
@@ -289,6 +293,9 @@ public class ClientListManager {
return sResult;
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#removeAllClients()
+ */
public void removeAllClients() {
try {
TypedQuery<RoomClient> q =
em.createNamedQuery("deleteAll", RoomClient.class);
@@ -298,12 +305,18 @@ public class ClientListManager {
}
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getRecordingCount(long)
+ */
public long getRecordingCount(long roomId) {
TypedQuery<Long> q =
em.createNamedQuery("getRecordingCountByRoomId", Long.class);
q.setParameter("room_id", roomId);
return q.getSingleResult();
}
+ /* (non-Javadoc)
+ * @see
org.apache.openmeetings.remote.red5.IClientList#getPublisingCount(long)
+ */
public long getPublisingCount(long roomId) {
TypedQuery<Long> q =
em.createNamedQuery("getPublisingCountByRoomId", Long.class);
q.setParameter("room_id", roomId);
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListHashMapStore.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListHashMapStore.java?rev=1402968&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListHashMapStore.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ClientListHashMapStore.java
Sun Oct 28 10:48:08 2012
@@ -0,0 +1,380 @@
+package org.apache.openmeetings.remote.red5;
+
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.apache.openmeetings.data.beans.basic.SearchResult;
+import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
+import org.apache.openmeetings.utils.crypt.ManageCryptStyle;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class ClientListHashMapStore implements IClientList {
+
+ private static HashMap<String, RoomClient> clientList = new
HashMap<String, RoomClient>();
+
+ private static final Logger log = Red5LoggerFactory.getLogger(
+ ClientListHashMapStore.class,
OpenmeetingsVariables.webAppRootKey);
+
+ @Autowired
+ private ManageCryptStyle manageCryptStyle;
+
+ /**
+ * Get current clients and extends the room client with its potential
+ * audio/video client and settings
+ *
+ * @param room_id
+ * @return
+ */
+ public List<RoomClient> getRoomClients(Long room_id) {
+ try {
+ return this.getClientListByRoom(room_id);
+ } catch (Exception err) {
+ log.error("[getRoomClients]", err);
+ }
+ return null;
+ }
+
+ public synchronized RoomClient addClientListItem(String streamId,
+ String scopeName, Integer remotePort, String
remoteAddress,
+ String swfUrl, boolean isAVClient) {
+ try {
+
+ // Store the Connection into a bean and add it to the
HashMap
+ RoomClient rcm = new RoomClient();
+ rcm.setConnectedSince(new Date());
+ rcm.setStreamid(streamId);
+ rcm.setScope(scopeName);
+ long thistime = new Date().getTime();
+ rcm.setPublicSID(manageCryptStyle.getInstanceOfCrypt()
+
.createPassPhrase(String.valueOf(thistime).toString()));
+
+ rcm.setUserport(remotePort);
+ rcm.setUserip(remoteAddress);
+ rcm.setSwfurl(swfUrl);
+ rcm.setIsMod(new Boolean(false));
+ rcm.setCanDraw(new Boolean(false));
+ rcm.setIsAVClient(isAVClient);
+
+ if (clientList.containsKey(streamId)) {
+ log.error("Tried to add an existing Client " +
streamId);
+ return null;
+ }
+
+ clientList.put(rcm.getStreamid(), rcm);
+
+ log.debug(" :: addClientListItem :: " +
rcm.getRoomClientId());
+
+ return rcm;
+ } catch (Exception err) {
+ log.error("[addClientListItem]", err);
+ }
+ return null;
+ }
+
+ public synchronized Collection<RoomClient> getAllClients() {
+ return clientList.values();
+ }
+
+ public synchronized RoomClient getClientByStreamId(String streamId) {
+ try {
+ if (!clientList.containsKey(streamId)) {
+ log.debug("Tried to get a non existing Client "
+ streamId);
+ return null;
+ }
+ return clientList.get(streamId);
+ } catch (Exception err) {
+ log.error("[getClientByStreamId]", err);
+ }
+ return null;
+ }
+
+ /**
+ * Additionally checks if the client receives sync events
+ *
+ * Sync events will no be broadcasted to:
+ * - Screensharing users
+ * - Audio/Video connections only
+ *
+ * @param streamId
+ * @return
+ */
+ public synchronized RoomClient getSyncClientByStreamId(String streamId)
{
+ try {
+ if (!clientList.containsKey(streamId)) {
+ log.debug("Tried to get a non existing Client "
+ streamId);
+ return null;
+ }
+
+ RoomClient rcl = clientList.get(streamId);
+
+ if (rcl == null) {
+ return null;
+ }
+
+ if (rcl.getIsScreenClient() != null &&
rcl.getIsScreenClient()) {
+ return null;
+ }
+
+ return clientList.get(streamId);
+ } catch (Exception err) {
+ log.error("[getClientByStreamId]", err);
+ }
+ return null;
+ }
+
+ public RoomClient getClientByPublicSID(String publicSID, boolean
isAVClient) {
+ try {
+ for (Iterator<String> iter =
clientList.keySet().iterator(); iter
+ .hasNext();) {
+ RoomClient rcl = clientList.get(iter.next());
+
+ if (!rcl.getPublicSID().equals(publicSID)) {
+ continue;
+ }
+ if (rcl.getIsAVClient() != isAVClient) {
+ continue;
+ }
+
+ return rcl;
+ }
+ } catch (Exception err) {
+ log.error("[getClientByPublicSID]", err);
+ }
+ return null;
+ }
+
+ public synchronized RoomClient getClientByUserId(Long userId) {
+ try {
+ for (Iterator<String> iter =
clientList.keySet().iterator(); iter
+ .hasNext();) {
+ RoomClient rcl = clientList.get(iter.next());
+ if (rcl.getUser_id().equals(userId)) {
+ return rcl;
+ }
+ }
+ } catch (Exception err) {
+ log.error("[getClientByPublicSID]", err);
+ }
+ return null;
+ }
+
+ /**
+ * Update the session object of the audio/video-connection and
additionally swap the
+ * values to the session object of the user that holds the full session
object
+ * @param streamId
+ * @param rcm
+ * @return
+ */
+ public synchronized Boolean updateAVClientByStreamId(String streamId,
+ RoomClient rcm) {
+ try {
+
+ //get the corresponding user session object and update
the settings
+ RoomClient rclUsual =
getClientByPublicSID(rcm.getPublicSID(), false);
+ if (rclUsual != null) {
+ rclUsual.setBroadCastID(rcm.getBroadCastID());
+ rclUsual.setAvsettings(rcm.getAvsettings());
+ rclUsual.setVHeight(rcm.getVHeight());
+ rclUsual.setVWidth(rcm.getVWidth());
+ rclUsual.setVX(rcm.getVX());
+ rclUsual.setVY(rcm.getVY());
+ if
(clientList.containsKey(rclUsual.getStreamid())) {
+ clientList.put(rclUsual.getStreamid(),
rclUsual);
+ } else {
+ log.debug("Tried to update a non
existing Client " + rclUsual.getStreamid());
+ }
+ }
+
+ updateClientByStreamId(streamId, rcm);
+ } catch (Exception err) {
+ log.error("[updateAVClientByStreamId]", err);
+ }
+ return null;
+ }
+
+ public synchronized Boolean updateClientByStreamId(String streamId,
+ RoomClient rcm) {
+ try {
+ if (clientList.containsKey(streamId)) {
+ clientList.put(streamId, rcm);
+ return true;
+ } else {
+ log.debug("Tried to update a non existing
Client " + streamId);
+ return false;
+ }
+ } catch (Exception err) {
+ log.error("[updateClientByStreamId]", err);
+ }
+ return null;
+ }
+
+ public synchronized Boolean removeClient(String streamId) {
+ try {
+ if (clientList.containsKey(streamId)) {
+ clientList.remove(streamId);
+ // log.debug(":: removeClient
::"+clientList.size());
+ return true;
+ } else {
+ log.debug("Tried to remove a non existing
Client " + streamId);
+ return false;
+ }
+ } catch (Exception err) {
+ log.error("[removeClient]", err);
+ }
+ return null;
+ }
+
+ /**
+ * Get all ClientList Objects of that room and domain This Function is
+ * needed cause it is invoked internally AFTER the current user has been
+ * already removed from the ClientList to see if the Room is empty
again and
+ * the PollList can be removed
+ *
+ * @return
+ */
+ public synchronized List<RoomClient> getClientListByRoom(
+ Long room_id) {
+ List<RoomClient> roomClientList = new ArrayList<RoomClient>();
+ try {
+ for (Iterator<String> iter =
clientList.keySet().iterator(); iter
+ .hasNext();) {
+ String key = iter.next();
+ RoomClient rcl = clientList.get(key);
+
+ // client initialized and same room
+ if (rcl.getRoom_id() == null ||
!room_id.equals(rcl.getRoom_id())) {
+ continue;
+ }
+ if (rcl.getIsScreenClient() == null ||
+ rcl.getIsScreenClient()) {
+ continue;
+ }
+ if (rcl.getIsAVClient()) {
+ continue;
+ }
+
+ //Only parse really those users out that are
really a full session object
+ //and no pseudo session object like the
audio/video or screen sharing connection
+ roomClientList.add(rcl);
+
+ }
+ } catch (Exception err) {
+ log.error("[getClientListByRoom]", err);
+ }
+ return roomClientList;
+ }
+
+ public synchronized List<RoomClient> getClientListByRoomAll(
+ Long room_id) {
+ List<RoomClient> roomClientList = new ArrayList<RoomClient>();
+ try {
+ for (Iterator<String> iter =
clientList.keySet().iterator(); iter
+ .hasNext();) {
+ String key = iter.next();
+ // log.debug("getClientList key: "+key);
+ RoomClient rcl = clientList.get(key);
+
+ if (rcl.getRoom_id() != null
+ &&
rcl.getRoom_id().equals(room_id)) {
+ // same room
+ roomClientList.add(rcl);
+ }
+ }
+ } catch (Exception err) {
+ log.error("[getClientListByRoomAll]", err);
+ }
+ return roomClientList;
+ }
+
+ /**
+ * get the current Moderator in this room
+ *
+ * @param roomname
+ * @return
+ */
+ public synchronized List<RoomClient> getCurrentModeratorByRoom(Long
room_id) {
+
+ List<RoomClient> rclList = new LinkedList<RoomClient>();
+ for (Iterator<String> iter = clientList.keySet().iterator();
iter
+ .hasNext();) {
+ String key = iter.next();
+ RoomClient rcl = clientList.get(key);
+ //
+ log.debug("*..*unsetModerator ClientList key: " +
rcl.getStreamid());
+ //
+ // Check if the Client is in the same room
+ if (room_id != null && room_id.equals(rcl.getRoom_id())
+ && rcl.getIsMod()) {
+ log.debug("found client who is the Moderator: "
+ rcl);
+ rclList.add(rcl);
+ }
+ }
+
+ return rclList;
+ }
+
+ public synchronized SearchResult<RoomClient> getListByStartAndMax(int
start, int max,
+ String orderby, boolean asc) {
+ SearchResult<RoomClient> sResult = new
SearchResult<RoomClient>();
+ sResult.setObjectName(RoomClient.class.getName());
+ sResult.setRecords(Long.valueOf(clientList.size()).longValue());
+ LinkedList<RoomClient> myList = new LinkedList<RoomClient>();
+
+ int i = 0;
+ Iterator<String> iter = clientList.keySet().iterator();
+ while (iter.hasNext()) {
+ String key = iter.next();
+ if (i >= start) {
+ myList.add(clientList.get(key));
+ }
+ if (i > max) {
+ break;
+ }
+ i++;
+ }
+ sResult.setResult(myList);
+
+ return sResult;
+ }
+
+ public synchronized void removeAllClients() {
+ try {
+ clientList.clear();
+ } catch (Exception err) {
+ log.error("[removeAllClients]", err);
+ }
+ }
+
+
+ public long getRecordingCount(long roomId) {
+ List<RoomClient> currentClients =
this.getClientListByRoom(roomId);
+ int numberOfRecordingUsers = 0;
+ for (RoomClient rcl : currentClients) {
+ if (rcl.isStartRecording()) {
+ numberOfRecordingUsers++;
+ }
+ }
+ return numberOfRecordingUsers;
+ }
+
+ public long getPublisingCount(long roomId) {
+ List<RoomClient> currentClients =
this.getClientListByRoom(roomId);
+ int numberOfPublishingUsers = 0;
+ for (RoomClient rcl : currentClients) {
+ if (rcl.isStreamPublishStarted()) {
+ numberOfPublishingUsers++;
+ }
+ }
+ return numberOfPublishingUsers;
+ }
+
+}
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/IClientList.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/IClientList.java?rev=1402968&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/IClientList.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/IClientList.java
Sun Oct 28 10:48:08 2012
@@ -0,0 +1,90 @@
+package org.apache.openmeetings.remote.red5;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.apache.openmeetings.data.beans.basic.SearchResult;
+import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
+
+public interface IClientList {
+
+ /**
+ * Get current clients and extends the room client with its potential
+ * audio/video client and settings
+ *
+ * @param room_id
+ * @return
+ */
+ public abstract List<RoomClient> getRoomClients(Long room_id);
+
+ public abstract RoomClient addClientListItem(String streamId,
+ String scopeName, Integer remotePort, String
remoteAddress,
+ String swfUrl, boolean isAVClient);
+
+ public abstract Collection<RoomClient> getAllClients();
+
+ public abstract RoomClient getClientByStreamId(String streamId);
+
+ /**
+ * Additionally checks if the client receives sync events
+ *
+ * Sync events will no be broadcasted to:
+ * - Screensharing users
+ * - Audio/Video connections only
+ *
+ * @param streamId
+ * @return
+ */
+ public abstract RoomClient getSyncClientByStreamId(String streamId);
+
+ public abstract RoomClient getClientByPublicSID(String publicSID,
+ boolean isAVClient);
+
+ public abstract RoomClient getClientByUserId(Long userId);
+
+ /**
+ * Update the session object of the audio/video-connection and
additionally swap the
+ * values to the session object of the user that holds the full session
object
+ * @param streamId
+ * @param rcm
+ * @return
+ */
+ public abstract Boolean updateAVClientByStreamId(String streamId,
+ RoomClient rcm);
+
+ public abstract Boolean updateClientByStreamId(String streamId,
+ RoomClient rcm);
+
+ public abstract Boolean removeClient(String streamId);
+
+ /**
+ * Get all ClientList Objects of that room and domain This Function is
+ * needed cause it is invoked internally AFTER the current user has been
+ * already removed from the ClientList to see if the Room is empty
again and
+ * the PollList can be removed
+ *
+ * @return
+ */
+ public abstract List<RoomClient> getClientListByRoom(Long room_id);
+
+ public abstract List<RoomClient> getClientListByRoomAll(Long room_id);
+
+ /**
+ * get the current Moderator in this room
+ *
+ * @param roomname
+ * @return
+ */
+ public abstract List<RoomClient> getCurrentModeratorByRoom(Long
room_id);
+
+ //FIXME not sorted
+ public abstract SearchResult<RoomClient> getListByStartAndMax(int start,
+ int max, String orderby, boolean asc);
+
+ public abstract void removeAllClients();
+
+ public abstract long getRecordingCount(long roomId);
+
+ public abstract long getPublisingCount(long roomId);
+
+}
\ No newline at end of file
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java
Sun Oct 28 10:48:08 2012
@@ -75,7 +75,7 @@ public class ScopeApplicationAdapter ext
OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
private EmoticonsManager emoticonsManager;
@Autowired
@@ -2270,6 +2270,14 @@ public class ScopeApplicationAdapter ext
syncMessageToCurrentScope(remoteMethodName, newMessage,
sendSelf, false);
}
+ /**
+ * Only temporary for load test, with return argument for the client to
have a result
+ *
+ * @param remoteMethodName
+ * @param newMessage
+ * @param sendSelf
+ * @return
+ */
@Deprecated
public synchronized boolean loadTestSyncMessage(String
remoteMethodName, Object newMessage, boolean sendSelf) {
syncMessageToCurrentScope(remoteMethodName, newMessage,
sendSelf, false);
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/ScreenController.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/ScreenController.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/ScreenController.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/ScreenController.java
Sun Oct 28 10:48:08 2012
@@ -34,7 +34,7 @@ import org.apache.openmeetings.data.basi
import org.apache.openmeetings.data.basic.Sessionmanagement;
import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
import org.apache.openmeetings.persistence.beans.rooms.RoomClient;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.utils.OmFileHelper;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
@@ -53,7 +53,7 @@ public class ScreenController {
ScreenController.class,
OpenmeetingsVariables.webAppRootKey);
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Autowired
public Sessionmanagement sessionManagement;
@Autowired
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/test/poll/TestClientListManager.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/test/poll/TestClientListManager.java?rev=1402968&r1=1402967&r2=1402968&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/test/poll/TestClientListManager.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/test/poll/TestClientListManager.java
Sun Oct 28 10:48:08 2012
@@ -22,14 +22,14 @@ import static org.junit.Assert.assertNot
import java.util.Random;
-import org.apache.openmeetings.remote.red5.ClientListManager;
+import org.apache.openmeetings.remote.red5.IClientList;
import org.apache.openmeetings.test.AbstractOpenmeetingsSpringTest;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
public class TestClientListManager extends AbstractOpenmeetingsSpringTest {
@Autowired
- private ClientListManager clientListManager;
+ private IClientList clientListManager;
@Test
public void addClientListItem() {