Revision: 4145
Author: solomax666
Date: Tue Aug 30 08:41:57 2011
Log: - beans are retrieved using getter instead of servlet init method
http://code.google.com/p/openmeetings/source/detail?r=4145
Modified:
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenRequestHandler.java
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenRequestHandler.java
Sun Aug 28 09:53:59 2011
+++
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenRequestHandler.java
Tue Aug 30 08:41:57 2011
@@ -1,7 +1,5 @@
package org.openmeetings.servlet.outputhandler;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -12,7 +10,6 @@
import org.openmeetings.app.data.basic.Configurationmanagement;
import org.openmeetings.app.data.basic.Fieldmanagment;
import org.openmeetings.app.data.basic.Sessionmanagement;
-import org.openmeetings.app.data.user.Usermanagement;
import org.openmeetings.app.persistence.beans.basic.Configuration;
import org.openmeetings.app.persistence.beans.lang.Fieldlanguagesvalues;
import org.openmeetings.app.remote.red5.ScopeApplicationAdapter;
@@ -21,25 +18,63 @@
import org.openmeetings.server.socket.ServerSocketMinaProcess;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.context.ApplicationContext;
+import org.springframework.web.context.support.WebApplicationContextUtils;
public class ScreenRequestHandler extends VelocityViewServlet {
private static final long serialVersionUID = 2381722235536488913L;
private static final Logger log =
Red5LoggerFactory.getLogger(ScreenRequestHandler.class,
ScopeApplicationAdapter.webAppRootKey);
- private Sessionmanagement sessionManagement;
- private Configurationmanagement cfgManagement;
- private Usermanagement userManagement;
- private Fieldmanagment fieldmanagment;
- private RTPStreamingHandler rtpStreamingHandler;
-
- @Override
- public void init(ServletConfig config) throws ServletException {
- super.init(config);
- sessionManagement =
(Sessionmanagement)config.getServletContext().getAttribute("sessionManagement");
- cfgManagement =
(Configurationmanagement)config.getServletContext().getAttribute("cfgManagement");
- userManagement =
(Usermanagement)config.getServletContext().getAttribute("userManagement");
- fieldmanagment =
(Fieldmanagment)config.getServletContext().getAttribute("fieldmanagment");
- rtpStreamingHandler =
(RTPStreamingHandler)config.getServletContext().getAttribute("rtpStreamingHandler");
+ public Sessionmanagement getSessionManagement() {
+ try {
+ if (ScopeApplicationAdapter.initComplete) {
+ ApplicationContext context =
WebApplicationContextUtils
+
.getWebApplicationContext(getServletContext());
+ return (Sessionmanagement)
context.getBean("sessionManagement");
+ }
+ } catch (Exception err) {
+ log.error("[getSessionManagement]", err);
+ }
+ return null;
+ }
+
+ public Configurationmanagement getCfgManagement() {
+ try {
+ if (ScopeApplicationAdapter.initComplete) {
+ ApplicationContext context =
WebApplicationContextUtils
+
.getWebApplicationContext(getServletContext());
+ return (Configurationmanagement)
context.getBean("cfgManagement");
+ }
+ } catch (Exception err) {
+ log.error("[getCfgManagement]", err);
+ }
+ return null;
+ }
+
+ public Fieldmanagment getFieldmanagment() {
+ try {
+ if (ScopeApplicationAdapter.initComplete) {
+ ApplicationContext context =
WebApplicationContextUtils
+
.getWebApplicationContext(getServletContext());
+ return (Fieldmanagment)
context.getBean("fieldmanagment");
+ }
+ } catch (Exception err) {
+ log.error("[getFieldmanagment]", err);
+ }
+ return null;
+ }
+
+ public RTPStreamingHandler getRtpStreamingHandler() {
+ try {
+ if (ScopeApplicationAdapter.initComplete) {
+ ApplicationContext context =
WebApplicationContextUtils
+
.getWebApplicationContext(getServletContext());
+ return (RTPStreamingHandler)
context.getBean("rtpStreamingHandler");
+ }
+ } catch (Exception err) {
+ log.error("[getRtpStreamingHandler]", err);
+ }
+ return null;
}
@Override
@@ -54,10 +89,7 @@
}
log.debug("sid: " + sid);
- Long users_id = sessionManagement.checkSession(sid);
- Long user_level =
userManagement.getUserLevelByID(users_id);
-
- // if (user_level > 0) {
+ Long users_id =
getSessionManagement().checkSession(sid);
String publicSID =
httpServletRequest.getParameter("publicSID");
if (publicSID == null) {
@@ -156,7 +188,7 @@
"Inline; filename=\"" + requestedFile +
"\"");
// Check , which screenviewer is to be used
- org.openmeetings.app.persistence.beans.basic.Configuration conf =
cfgManagement
+ org.openmeetings.app.persistence.beans.basic.Configuration conf =
getCfgManagement()
.getConfKey(3L, "screen_viewer");
String template = "screencast_odsp_sharertemplate.vm";
@@ -165,6 +197,7 @@
log.debug("language_id :: " + language_id);
+ Fieldmanagment fieldmanagment = getFieldmanagment();
Fieldlanguagesvalues fValue728 = fieldmanagment
.getFieldByIdAndLanguage(728L,
language_id);
Fieldlanguagesvalues fValue729 = fieldmanagment
@@ -281,7 +314,7 @@
} else if (conf_i == 2) {
// Storing Session data
- RTPScreenSharingSession session
= rtpStreamingHandler
+ RTPScreenSharingSession session
= getRtpStreamingHandler()
.storeSessionForRoom(room, users_id, publicSID,
rtmphostlocal, -1);
@@ -342,7 +375,7 @@
ScopeApplicationAdapter.webAppRootKey + "/"
+ room);
- Configuration configuration =
cfgManagement.getConfKey(
+ Configuration configuration =
getCfgManagement().getConfKey(
3L,
"default.quality.screensharing");
String default_quality_screensharing =
"1";
if (configuration != null) {
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.