Author: lindner
Date: Thu Sep  4 11:57:50 2008
New Revision: 692191

URL: http://svn.apache.org/viewvc?rev=692191&view=rev
Log:
SHINDIG-569 | Add JMX integration

Modified:
    
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/servlet/GuiceServletContextListener.java

Modified: 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/servlet/GuiceServletContextListener.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/servlet/GuiceServletContextListener.java?rev=692191&r1=692190&r2=692191&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/servlet/GuiceServletContextListener.java
 (original)
+++ 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/servlet/GuiceServletContextListener.java
 Thu Sep  4 11:57:50 2008
@@ -18,8 +18,10 @@
  */
 package org.apache.shindig.common.servlet;
 
+import com.google.inject.Injector;
 import com.google.inject.Guice;
 import com.google.inject.Module;
+import com.google.inject.tools.jmx.Manager;
 
 import java.util.LinkedList;
 import java.util.List;
@@ -35,6 +37,7 @@
 public class GuiceServletContextListener implements ServletContextListener {
   public static final String INJECTOR_ATTRIBUTE = "guice-injector";
   public static final String MODULES_ATTRIBUTE = "guice-modules";
+  private boolean jmxInitialized = false;
 
   public void contextInitialized(ServletContextEvent event) {
     ServletContext context = event.getServletContext();
@@ -53,7 +56,17 @@
         }
       }
     }
-    context.setAttribute(INJECTOR_ATTRIBUTE, Guice.createInjector(modules));
+    Injector injector = Guice.createInjector(modules);
+    context.setAttribute(INJECTOR_ATTRIBUTE, injector);
+
+    try {
+      if (jmxInitialized == false) {
+        Manager.manage("ShindigGuiceContext", injector);
+        jmxInitialized = true;
+      }
+    } catch (Exception e) {
+      // Ignore errors
+    }
   }
 
   public void contextDestroyed(ServletContextEvent event) {


Reply via email to