List of usage examples for javax.management MBeanServer isRegistered
public boolean isRegistered(ObjectName name);
From source file:org.apache.synapse.commons.jmx.MBeanRegistrar.java
public boolean unRegisterMBean(String category, String id) { try {//from w w w. ja v a 2s. c o m MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); ObjectName objName = new ObjectName(getObjectName(category, id)); if (mbs.isRegistered(objName)) { mbs.unregisterMBean(objName); return true; } } catch (Exception e) { log.warn("Error un-registering a MBean with name ' " + id + " ' and category name ' " + category + "' for JMX management", e); } return false; }
From source file:rapture.jmx.JmxServer.java
private void registerBean(Object object, String objNameStr) { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try {/*ww w .jav a 2 s . c om*/ ObjectName objectName = new ObjectName(objNameStr); if (!mbs.isRegistered(objectName)) { mbs.registerMBean(object, objectName); } } catch (InstanceAlreadyExistsException | MBeanRegistrationException | NotCompliantMBeanException | MalformedObjectNameException e) { log.warn(String.format("Registering a bean with name [%s] caused an exception", objNameStr), e); } }
From source file:org.jolokia.jmx.JolokiaMBeanServerTest.java
@Test public void withModelMBean() throws MBeanException, InvalidTargetObjectTypeException, InstanceNotFoundException, InstanceAlreadyExistsException, NotCompliantMBeanException, MalformedObjectNameException, NoSuchMethodException, IntrospectionException { RequiredModelMBean modelMBean = new RequiredModelMBean(); ModelMBeanInfo mbi = new ModelMBeanInfoSupport(JsonAnnoPlainTest.class.getName(), "JsonMBean Test", new ModelMBeanAttributeInfo[] { new ModelMBeanAttributeInfo("DeepDive", "description", JsonAnnoPlainTest.class.getDeclaredMethod("getDeepDive"), null) }, new ModelMBeanConstructorInfo[] {}, new ModelMBeanOperationInfo[] {}, new ModelMBeanNotificationInfo[] {}); modelMBean.setModelMBeanInfo(mbi);/* w w w . j a v a 2 s.co m*/ modelMBean.setManagedResource(new JsonAnnoPlainTest(), "ObjectReference"); JolokiaMBeanServer server = new JolokiaMBeanServer(); ObjectName oName = new ObjectName("test:type=jsonMBean"); server.registerMBean(modelMBean, oName); MBeanServer plattformServer = ManagementFactory.getPlatformMBeanServer(); Assert.assertTrue(plattformServer.isRegistered(oName)); Assert.assertTrue(server.isRegistered(oName)); server.unregisterMBean(oName); Assert.assertFalse(plattformServer.isRegistered(oName)); Assert.assertFalse(server.isRegistered(oName)); }
From source file:org.onehippo.forge.channelmanager.pagesupport.document.management.impl.DocumentManagementServiceDaemonModule.java
private void unregisterDocumentManagementServiceMBean() { try {/* ww w .ja v a2 s . c o m*/ MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); ObjectName mbeanName = new ObjectName(DocumentManagementServiceMXBean.NAME); if (mbeanServer.isRegistered(mbeanName)) { mbeanServer.unregisterMBean(mbeanName); } } catch (Exception e) { log.error("Failed to unregister MBean.", e); } }
From source file:org.onehippo.forge.channelmanager.pagesupport.document.management.impl.DocumentManagementServiceDaemonModule.java
private void registerDocumentManagementServiceMBean() { try {/*from w w w. j av a2 s. c o m*/ MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); ObjectName mbeanName = new ObjectName(DocumentManagementServiceMXBean.NAME); if (mbeanServer.isRegistered(mbeanName)) { mbeanServer.unregisterMBean(mbeanName); } mbeanServer.registerMBean(documentManagementService, mbeanName); } catch (Exception e) { log.error("Failed to register MBean.", e); } }
From source file:com.mtgi.analytics.jmx.StatisticsMBeanEventPersisterTest.java
private void waitForCount(ObjectName id, int count) throws JMException, InterruptedException { MBeanServer jmx = JmxUtils.locateMBeanServer(); long start = System.currentTimeMillis(); int actual = -1; do {// w w w . j a v a2 s .c o m if (jmx.isRegistered(id)) actual = ((Number) jmx.getAttribute(id, "Count")).intValue(); if (actual < count) Thread.sleep(10); } while (actual < count && (System.currentTimeMillis() - start) < 300000); assertEquals("events received for " + id, actual, count); }
From source file:org.ow2.proactive.resourcemanager.node.jmx.SigarExposer.java
public void registerMBeans(MBeanServer mbs) { try {//from w w w . jav a 2s .c o m // Create the SIGAR registry SigarRegistry registry = new SigarRegistry(); ObjectName name = new ObjectName(registry.getObjectName()); if (!mbs.isRegistered(name)) { mbs.registerMBean(registry, name); } String databaseFolder = System.getProperty(MONITORING_DB_DIR); if (databaseFolder == null || databaseFolder.trim().isEmpty()) { String fs = System.getProperty("file.separator"); databaseFolder = PAResourceManagerProperties.RM_HOME.getValueAsString() + fs + "data" + fs; } FileUtils.forceMkdir(new File(databaseFolder)); String dataBaseName = databaseFolder + nodeName + "_statistics.rrd"; setDataStore(new RRDSigarDataStore(mbs, dataBaseName, PAResourceManagerProperties.RM_RRD_STEP.getValueAsInt(), Logger.getLogger(SigarExposer.class))); name = new ObjectName("sigar:Type=Processes"); SigarProcessesMXBean processes = new SigarProcesses(dataBaseName); if (!mbs.isRegistered(name)) { mbs.registerMBean(processes, name); } } catch (Exception e) { LOGGER.error("Unable to register SigarRegistry mbean", e); } }
From source file:io.github.tfahub.dropwizard.logging.XmlBasedLoggingFactory.java
void registerJmxConfiguratorMBean() throws JMException { final MBeanServer server = ManagementFactory.getPlatformMBeanServer(); final ObjectName objectName = new ObjectName("io.dropwizard:type=Logging"); if (!server.isRegistered(objectName)) { server.registerMBean(new JMXConfigurator(loggerContext, server, objectName), objectName); }/*from w ww . j av a 2s .co m*/ }
From source file:com.mtgi.analytics.jmx.StatisticsMBeanEventPersisterTest.java
@Test public void testMbeanRegistration() throws FailingHttpStatusCodeException, IOException, SQLException, JMException, InterruptedException { ObjectName[] all = {/* ww w .j av a 2 s .c o m*/ ObjectName.getInstance("testApp:type=http-request-monitor,name=/testApp/test/invoke.do"), ObjectName.getInstance("testApp:type=http-request-monitor,name=/testApp/test/invoke.do," + "nested=method_com.mtgi.analytics.jmx.StatisticsMBeanEventPersisterTest$Service.save"), ObjectName.getInstance("testApp:type=http-request-monitor,name=/testApp/test/invoke.do," + "nested=method_com.mtgi.analytics.jmx.StatisticsMBeanEventPersisterTest$Service.save," + "nested[2]=jdbc_executeBatch") }; MBeanServer jmx = JmxUtils.locateMBeanServer(); for (ObjectName on : all) assertFalse("statistics mbean " + on + " is not yet registered", jmx.isRegistered(on)); assertEquals("no data in test db yet", 0, countRecords()); webClient.getPage(baseUrl + "/testApp/test/invoke.do?id=1&value=hello"); assertEquals("test service invoked", 1, countRecords()); //verify that we receive updated statistics for each of our monitored events for (ObjectName on : all) waitForCount(on, 1); //post again, and verify that the now-registered mbeans are updated. webClient.getPage(baseUrl + "/testApp/test/invoke.do?id=2&value=world"); assertEquals("test service invoked", 2, countRecords()); for (ObjectName on : all) waitForCount(on, 2); }
From source file:dk.netarkivet.common.management.SingleMBeanObject.java
/** * Unregister the object from the MBeanServer. Note: It is not checked that * it is actually this mbean that is registered under the name, this method * simply unregisters any object with this object name. * * @throws IOFailure on trouble unregistering. *//*from www . j ava 2s .c om*/ public void unregister() { MBeanServer mbserver = mBeanServer; try { if (name != null) { name = new ObjectName(domain, nameProperties); } if (mbserver.isRegistered(name)) { mbserver.unregisterMBean(name); } } catch (JMException e) { throw new IOFailure("Unable to unregister MBean '" + name + "'", e); } }