Revision: 4146
Author:   solomax666
Date:     Tue Aug 30 08:47:38 2011
Log:      - beans are retrieved using getter instead of servlet init method
http://code.google.com/p/openmeetings/source/detail?r=4146

Modified:
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenServlet.java

=======================================
--- /branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenServlet.java Sat Aug 27 03:27:19 2011 +++ /branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/ScreenServlet.java Tue Aug 30 08:47:38 2011
@@ -18,7 +18,6 @@
 import java.util.LinkedHashMap;

 import javax.imageio.ImageIO;
-import javax.servlet.ServletConfig;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
@@ -38,6 +37,8 @@
 import org.openmeetings.utils.stringhandlers.StringComparer;
 import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.springframework.context.ApplicationContext;
+import org.springframework.web.context.support.WebApplicationContextUtils;

 import com.anotherbigidea.flash.movie.ImageUtil;
 import com.anotherbigidea.flash.movie.Movie;
@@ -50,22 +51,82 @@
        private static final long serialVersionUID = 1L;
private static final Logger log = Red5LoggerFactory.getLogger(ScreenServlet.class, ScopeApplicationAdapter.webAppRootKey);

-       private Sessionmanagement sessionManagement;
-       private Configurationmanagement cfgManagement;
-    private Usermanagement userManagement;
-       private UsersDaoImpl usersDao;
-       private ScopeApplicationAdapter scopeApplicationAdapter;
-       private ClientListManager clientListManager;
-
-       @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"); - usersDao = (UsersDaoImpl)config.getServletContext().getAttribute("usersDao"); - scopeApplicationAdapter = (ScopeApplicationAdapter)config.getServletContext().getAttribute("scopeApplicationAdapter"); - clientListManager = (ClientListManager)config.getServletContext().getAttribute("clientListManager");
+       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 Usermanagement getUserManagement() {
+               try {
+                       if (ScopeApplicationAdapter.initComplete) {
+                               ApplicationContext context = 
WebApplicationContextUtils
+                                               
.getWebApplicationContext(getServletContext());
+                               return (Usermanagement) 
context.getBean("userManagement");
+                       }
+               } catch (Exception err) {
+                       log.error("[getUserManagement]", err);
+               }
+               return null;
+       }
+
+       public UsersDaoImpl getUsersDao() {
+               try {
+                       if (ScopeApplicationAdapter.initComplete) {
+                               ApplicationContext context = 
WebApplicationContextUtils
+                                               
.getWebApplicationContext(getServletContext());
+                               return (UsersDaoImpl) 
context.getBean("usersDao");
+                       }
+               } catch (Exception err) {
+                       log.error("[getUsersDao]", err);
+               }
+               return null;
+       }
+
+       public ScopeApplicationAdapter getScopeApplicationAdapter() {
+               try {
+                       if (ScopeApplicationAdapter.initComplete) {
+                               ApplicationContext context = 
WebApplicationContextUtils
+                                               
.getWebApplicationContext(getServletContext());
+ return (ScopeApplicationAdapter) context.getBean("scopeApplicationAdapter");
+                       }
+               } catch (Exception err) {
+                       log.error("[getScopeApplicationAdapter]", err);
+               }
+               return null;
+       }
+
+       public ClientListManager getClientListManager() {
+               try {
+                       if (ScopeApplicationAdapter.initComplete) {
+                               ApplicationContext context = 
WebApplicationContextUtils
+                                               
.getWebApplicationContext(getServletContext());
+                               return (ClientListManager) 
context.getBean("clientListManager");
+                       }
+               } catch (Exception err) {
+                       log.error("[getClientListManager]", err);
+               }
+               return null;
        }

        /* (non-Javadoc)
@@ -113,11 +174,11 @@
ServletMultipartRequest upload = new ServletMultipartRequest(httpServletRequest, 104857600); // max 100 mb


-                               Long users_id = 
sessionManagement.checkSession(sid);
-                               Long user_level = 
userManagement.getUserLevelByID(users_id);
+                               Long users_id = 
getSessionManagement().checkSession(sid);
+                               Long user_level = 
getUserManagement().getUserLevelByID(users_id);

                                // Switch between scharers
- Configuration c = cfgManagement.getConfKey(user_level, "screen_viewer"); + Configuration c = getCfgManagement().getConfKey(user_level, "screen_viewer");

                                if(c == null || c.getConf_value().equals("0")){
doStandardSharing(sid, publicSID, room, domain, upload, record, httpServletResponse);
@@ -135,8 +196,8 @@

                try {
                        System.out.println("ScreenServlet Call");
-                       Long users_id = sessionManagement.checkSession(sid);
-                               Long user_level = 
userManagement.getUserLevelByID(users_id);
+                       Long users_id = 
getSessionManagement().checkSession(sid);
+                               Long user_level = 
getUserManagement().getUserLevelByID(users_id);

                                if (user_level > 0) {

@@ -144,8 +205,8 @@
                                        boolean userIsInRoom = false;
                                        boolean doProcess = false;

- HashMap<String, RoomClient> clientList = clientListManager.getClientList();
-                                       for (Iterator iter = 
clientList.keySet().iterator();iter.hasNext();) {
+ HashMap<String, RoomClient> clientList = getClientListManager().getClientList(); + for (Iterator<String> iter = clientList.keySet().iterator(); iter.hasNext();) {
                                                RoomClient rcl = 
clientList.get(iter.next());
                                                if 
(rcl.getPublicSID().equals(publicSID)) {
                                                        log.debug("found 
RoomClient");
@@ -237,14 +298,14 @@


                                                LinkedHashMap<String,Object> hs = new 
LinkedHashMap<String,Object>();
-                                               hs.put("user", 
usersDao.getUser(users_id));
+                                               hs.put("user", 
getUsersDao().getUser(users_id));
                                                hs.put("message", "desktop");
                                                hs.put("action", "newSlide");
                                                hs.put("fileName", 
newFileSystemName+"_"+sid+newFileSystemExtName);



- scopeApplicationAdapter.sendMessageByRoomAndDomain(Long.valueOf(room).longValue(),hs); + getScopeApplicationAdapter().sendMessageByRoomAndDomain(Long.valueOf(room).longValue(),hs);

                                        }

@@ -348,8 +409,8 @@

                try{

-                       Long users_id = sessionManagement.checkSession(sid);
-                       Long user_level = 
userManagement.getUserLevelByID(users_id);
+                       Long users_id = 
getSessionManagement().checkSession(sid);
+                       Long user_level = 
getUserManagement().getUserLevelByID(users_id);

                        if (user_level > 0) {

@@ -357,8 +418,8 @@
                                boolean userIsInRoom = false;
                                boolean doProcess = false;

- HashMap<String, RoomClient> clientList = clientListManager.getClientList();
-                               for (Iterator iter = 
clientList.keySet().iterator();iter.hasNext();) {
+ HashMap<String, RoomClient> clientList = getClientListManager().getClientList(); + for (Iterator<String> iter = clientList.keySet().iterator(); iter.hasNext();) {
                                        RoomClient rcl = 
clientList.get(iter.next());
                                        if 
(rcl.getPublicSID().equals(publicSID)) {
                                                log.debug("found RoomClient");
@@ -483,13 +544,13 @@

                                        if (!record.equals("yes")) {
                                                LinkedHashMap<String,Object> hs = new 
LinkedHashMap<String,Object>();
-                                               hs.put("user", 
usersDao.getUser(users_id));
+                                               hs.put("user", 
getUsersDao().getUser(users_id));
                                                hs.put("message", "desktop");
                                                hs.put("action", "newSlide");
                                                hs.put("fileName", 
newFileSystemName+"_"+sid+newFileSystemExtName);
                                                hs.put("swffileName", 
newFileSystemName+"_"+sid+".swf");

- scopeApplicationAdapter.sendMessageByRoomAndDomain(Long.valueOf(room).longValue(),hs); + getScopeApplicationAdapter().sendMessageByRoomAndDomain(Long.valueOf(room).longValue(),hs);


                                        }

--
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.

Reply via email to