Static Public Member Functions | |
synchronized MBeanServer | getInstance () |
boolean | isJmxEnabled () |
void | setJmxEnabled (boolean isJmxEnabled) throws JmxException |
ObjectInstance | registerMBean (Object object, ObjectName name) throws JmxException |
void | unregister (ObjectName name) throws JmxException |
Static Package Attributes | |
Trace | logger |
The server is created with org.objectweb.cjdbc.controller.jmx.MBeanServerBuilder
Definition at line 49 of file MBeanServerManager.java.
|
creating a MBeanServer, if it does not exist, otherwise a reference to the MBeanServer is returned
Definition at line 64 of file MBeanServerManager.java. 00065 { 00066 00067 if (!isJmxEnabled) 00068 { 00069 return null; 00070 } 00071 00072 if (mbs != null) 00073 { 00074 return mbs; 00075 } 00076 00077 String defaultServerBuilder = System 00078 .getProperty("javax.management.builder.initial"); 00079 00080 if (!MBeanServerBuilder.class.getName().equals(defaultServerBuilder)) 00081 { 00082 if (defaultServerBuilder != null) 00083 logger.error("property javax.management.builder.initial was " 00084 + defaultServerBuilder); 00085 00086 logger.debug("setting property javax.management.builder.initial"); 00087 System 00088 .setProperty("javax.management.builder.initial", 00089 org.objectweb.cjdbc.controller.jmx.MBeanServerBuilder.class 00090 .getName()); 00091 00092 } 00093 00094 mbs = MBeanServerFactory.createMBeanServer(); 00095 return mbs; 00096 }
|
|
Returns the isJmxEnabled value.
Definition at line 103 of file MBeanServerManager.java. 00104 {
00105 return isJmxEnabled;
00106 }
|
|
Registers an MBean with the MBean server if jmx is enabled, otherwise it returns null. This method is equivalend to
MBeanServer server = MBeanServerManager.getInstance(); if (server != null) { server.registerMBean(object, name); }
Definition at line 163 of file MBeanServerManager.java. 00165 { 00166 MBeanServer server = getInstance(); 00167 try 00168 { 00169 00170 if (server != null) 00171 { 00172 logger.debug(Translate.get("jmx.register.mbean", new String[]{ 00173 object.getClass().toString(), name.getCanonicalName()})); 00174 00175 ObjectInstance objInstance = null; 00176 if (!server.isRegistered(name)) 00177 { 00178 objInstance = server.registerMBean(object, name); 00179 } 00180 else 00181 { 00182 logger.error(Translate.get("jmx.register.mbean.already.exist", 00183 new String[]{name.getCanonicalName()})); 00184 try 00185 { 00186 server.unregisterMBean(name); 00187 } 00188 catch (Exception e) 00189 { 00190 logger.error(Translate.get("jmx.delete.mbean.failed", new String[]{ 00191 name.toString(), e.getMessage()})); 00192 } 00193 objInstance = server.registerMBean(object, name); 00194 } 00195 00196 logger.debug(Translate.get("jmx.server.mbean.count", "" 00197 + server.getMBeanCount())); 00198 return objInstance; 00199 } 00200 return null; 00201 } 00202 catch (Exception e) 00203 { 00204 logger.error(Translate.get("jmx.register.mbean.failed", 00205 new String[]{object.getClass().toString(), e.getMessage(), 00206 e.getClass().toString()})); 00207 e.printStackTrace(); 00208 e.getCause().printStackTrace(); 00209 throw new JmxException(e); 00210 } 00211 }
|
|
enable or disable jmx
Definition at line 114 of file MBeanServerManager.java. References org.objectweb.cjdbc.controller.jmx.HttpAdaptor.stop(), and org.objectweb.cjdbc.controller.jmx.RmiConnector.stop(). 00115 { 00116 if (MBeanServerManager.isJmxEnabled != isJmxEnabled && !isJmxEnabled && mbs!=null) 00117 { 00118 // stop rmi connectors 00119 List list = RmiConnector.getRmiConnectors(); 00120 for (Iterator it = list.iterator(); it.hasNext();) 00121 { 00122 RmiConnector rmi = (RmiConnector) it.next(); 00123 rmi.stop(); 00124 } 00125 00126 // stop http adaptors 00127 list = HttpAdaptor.getHttpAdaptors(); 00128 for (Iterator it = list.iterator(); it.hasNext();) 00129 { 00130 HttpAdaptor http = (HttpAdaptor) it.next(); 00131 http.stop(); 00132 } 00133 // Stop mbean server 00134 MBeanServerFactory.releaseMBeanServer(mbs); 00135 mbs = null; 00136 } 00137 // set jmx enabled to its value 00138 MBeanServerManager.isJmxEnabled = isJmxEnabled; 00139 }
|
|
unregister an mbean.
Definition at line 219 of file MBeanServerManager.java. 00220 { 00221 MBeanServer server = getInstance(); 00222 if (server != null) 00223 { 00224 try 00225 { 00226 // unregister the MBean 00227 server.unregisterMBean(name); 00228 logger.debug(Translate.get("jmx.server.mbean.count", "" 00229 + server.getMBeanCount())); 00230 00231 } 00232 catch (Exception e) 00233 { 00234 logger.error(Translate.get("jmx.register.mbean.failed", new String[]{ 00235 name.getCanonicalName(), e.getMessage()})); 00236 throw new JmxException(e); 00237 } 00238 } 00239 }
|
|
Initial value: Trace
.getLogger("org.objectweb.cjdbc.controller.jmx.MBeanServer")
Definition at line 52 of file MBeanServerManager.java. |