类javax.management.MalformedObjectNameException源码实例Demo

下面列出了怎么用javax.management.MalformedObjectNameException的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: blazingcache   文件: JMXUtils.java
/**
 * Unregister the mbean providing the status related to the specified {@link CacheClient}.
 *
 * @param client the client on which status mbean has to be unregistered
 */
public static void unregisterClientStatusMXBean(final CacheClient client) {
    if (platformMBeanServer == null) {
        return;
    }
    final String cacheClientId = safeName(client.getClientId());

    try {
        final ObjectName name = new ObjectName("blazingcache.client.management:type=CacheClientStatus,CacheClient=" + cacheClientId);

        if (platformMBeanServer.isRegistered(name)) {
            try {
                platformMBeanServer.unregisterMBean(name);
            } catch (InstanceNotFoundException noProblem) {
                LOGGER.warning("Impossible to unregister non-registered mbean: " + name + ". Cause: " + noProblem);
            }
        }
    } catch (MalformedObjectNameException | MBeanRegistrationException e) {
        throw new BlazingCacheManagementException(REGISTRATION_FAILURE_MSG, e);
    }
}
 
源代码2 项目: Tomcat8-Source-Read   文件: UserMBean.java
/**
 * @return the MBean Names of all groups this user is a member of.
 */
public String[] getGroups() {

    User user = (User) this.resource;
    ArrayList<String> results = new ArrayList<>();
    Iterator<Group> groups = user.getGroups();
    while (groups.hasNext()) {
        Group group = null;
        try {
            group = groups.next();
            ObjectName oname =
                MBeanUtils.createObjectName(managed.getDomain(), group);
            results.add(oname.toString());
        } catch (MalformedObjectNameException e) {
            IllegalArgumentException iae = new IllegalArgumentException
                ("Cannot create object name for group " + group);
            iae.initCause(e);
            throw iae;
        }
    }
    return results.toArray(new String[results.size()]);
}
 
源代码3 项目: javasimon   文件: JmxRegistrationCallbackTest.java
@Test
public void managerClearTest() throws MalformedObjectNameException {
	String counterName = "test.1";
	ObjectName counterObjectName = new ObjectName(DOMAIN + ":type=" + SimonInfo.COUNTER + ",name=" + counterName);

	String stopwatchName = "test.2";
	ObjectName stopwatchObjectName = new ObjectName(DOMAIN + ":type=" + SimonInfo.STOPWATCH + ",name=" + stopwatchName);

	Assert.assertFalse(mbs.isRegistered(counterObjectName));
	Assert.assertFalse(mbs.isRegistered(stopwatchObjectName));

	SimonManager.getCounter(counterName);
	Assert.assertTrue(mbs.isRegistered(counterObjectName));

	SimonManager.getStopwatch(stopwatchName);
	Assert.assertTrue(mbs.isRegistered(stopwatchObjectName));

	SimonManager.clear();
	Assert.assertFalse(mbs.isRegistered(counterObjectName));
	Assert.assertFalse(mbs.isRegistered(stopwatchObjectName));
}
 
源代码4 项目: tomcatsrc   文件: MemoryUserDatabaseMBean.java
/**
 * Return the MBean Name for the specified group name (if any);
 * otherwise return <code>null</code>.
 *
 * @param groupname Group name to look up
 */
public String findGroup(String groupname) {

    UserDatabase database = (UserDatabase) this.resource;
    Group group = database.findGroup(groupname);
    if (group == null) {
        return (null);
    }
    try {
        ObjectName oname =
            MBeanUtils.createObjectName(managedGroup.getDomain(), group);
        return (oname.toString());
    } catch (MalformedObjectNameException e) {
        IllegalArgumentException iae = new IllegalArgumentException
            ("Cannot create object name for group [" + groupname + "]");
        iae.initCause(e);
        throw iae;
    }

}
 
源代码5 项目: rubix   文件: CachingFileSystem.java
public static void setLocalBookKeeper(BookKeeperService.Iface bookKeeper, String statsMbeanSuffix)
{
  bookKeeperFactory = new BookKeeperFactory(bookKeeper);
  if (!Strings.isNullOrEmpty(statsMbeanSuffix)) {
    String mBeanName = statsMBeanBaseName + "," + statsMbeanSuffix;
    MBeanExporter exporter = new MBeanExporter(ManagementFactory.getPlatformMBeanServer());
    try {
      if (ManagementFactory.getPlatformMBeanServer().isRegistered(new ObjectName(statsMBeanBaseName))) {
        exporter.unexport(statsMBeanBaseName);
      }
      if (!ManagementFactory.getPlatformMBeanServer().isRegistered(new ObjectName(mBeanName))) {
        exporter.export(mBeanName, statsMBean);
      }
    }
    catch (MalformedObjectNameException e) {
      log.error("Could not export stats mbean", e);
    }
  }
}
 
源代码6 项目: wildfly-core   文件: ObjectNameAddressUtil.java
/**
 * Creates an ObjectName representation of a {@link PathAddress}.
 * @param domain the JMX domain to use for the ObjectName. Cannot be {@code null}
 * @param pathAddress the address. Cannot be {@code null}
 * @param context contextual objection that allows this method to cache state across invocations. May be {@code null}
 * @return the ObjectName. Will not return {@code null}
 */
static ObjectName createObjectName(final String domain, final PathAddress pathAddress, ObjectNameCreationContext context) {

    if (pathAddress.size() == 0) {
        return ModelControllerMBeanHelper.createRootObjectName(domain);
    }
    final StringBuilder sb = new StringBuilder(domain);
    sb.append(":");
    boolean first = true;
    for (PathElement element : pathAddress) {
        if (first) {
            first = false;
        } else {
            sb.append(",");
        }
        escapeKey(ESCAPED_KEY_CHARACTERS, sb, element.getKey(), context);
        sb.append("=");
        escapeValue(sb, element.getValue(), context);
    }
    try {
        return ObjectName.getInstance(sb.toString());
    } catch (MalformedObjectNameException e) {
        throw JmxLogger.ROOT_LOGGER.cannotCreateObjectName(e, pathAddress, sb.toString());
    }
}
 
源代码7 项目: tomcatsrc   文件: NamingResourcesMBean.java
/**
 * Add a resource link reference for this web application.
 *
 * @param resourceLinkName New resource link reference name
 * @param type New resource link reference type
 */
public String addResourceLink(String resourceLinkName, String type)
    throws MalformedObjectNameException {
    
    NamingResources nresources = (NamingResources) this.resource;
    if (nresources == null) {
        return null;
    }
    ContextResourceLink resourceLink = 
                        nresources.findResourceLink(resourceLinkName);
    if (resourceLink != null) {
        throw new IllegalArgumentException
            ("Invalid resource link name - already exists'" + 
            resourceLinkName + "'");
    }
    resourceLink = new ContextResourceLink();
    resourceLink.setName(resourceLinkName);
    resourceLink.setType(type);
    nresources.addResourceLink(resourceLink);
    
    // Return the corresponding MBean name
    ManagedBean managed = registry.findManagedBean("ContextResourceLink");
    ObjectName oname =
        MBeanUtils.createObjectName(managed.getDomain(), resourceLink);
    return (oname.toString());
}
 
源代码8 项目: herddb   文件: JMXUtils.java
public static void unregisterDBManagerStatsMXBean() {
    if (platformMBeanServer == null) {
        return;
    }

    try {
        ObjectName name = new ObjectName("herddb.server:type=Server");
        if (platformMBeanServer.isRegistered(name)) {
            try {
                platformMBeanServer.unregisterMBean(name);
            } catch (InstanceNotFoundException noProblem) {
            }
        }
    } catch (MalformedObjectNameException | MBeanRegistrationException e) {
        throw new HerdDBInternalException("Could not unregister MXBean " + e);
    }
}
 
源代码9 项目: tomcatsrc   文件: AbstractProtocol.java
private ObjectName createObjectName() throws MalformedObjectNameException {
    // Use the same domain as the connector
    domain = adapter.getDomain();

    if (domain == null) {
        return null;
    }

    StringBuilder name = new StringBuilder(getDomain());
    name.append(":type=ProtocolHandler,port=");
    int port = getPort();
    if (port > 0) {
        name.append(getPort());
    } else {
        name.append("auto-");
        name.append(getNameIndex());
    }
    InetAddress address = getAddress();
    if (address != null) {
        name.append(",address=");
        name.append(ObjectName.quote(address.getHostAddress()));
    }
    return new ObjectName(name.toString());
}
 
源代码10 项目: blazingcache   文件: JMXUtils.java
public static <K, V> void registerStatisticsMXBean(BlazingCacheCache<K, V> cache, BlazingCacheStatisticsMXBean<K, V> bean) {
    if (platformMBeanServer == null) {
        throw new CacheException("PlatformMBeanServer not available", mBeanServerLookupError);
    }
    String cacheManagerName = safeName(cache.getCacheManager().getURI().toString());
    String cacheName = safeName(cache.getName());

    try {
        ObjectName name = new ObjectName("javax.cache:type=CacheStatistics,CacheManager=" + cacheManagerName + ",Cache=" + cacheName);

        if (platformMBeanServer.isRegistered(name)) {
            try {
                platformMBeanServer.unregisterMBean(name);
            } catch (InstanceNotFoundException noProblem) {
            }
        }
        platformMBeanServer.registerMBean(bean, name);
    } catch (MalformedObjectNameException | InstanceAlreadyExistsException | MBeanRegistrationException | NotCompliantMBeanException e) {
        throw new CacheException("Could not register MXBean " + e);
    }
}
 
/**
 * Reads the {@code ObjectName} from the source-level metadata associated
 * with the managed resource's {@code Class}.
 */
@Override
public ObjectName getObjectName(Object managedBean, String beanKey) throws MalformedObjectNameException {
	Class<?> managedClass = AopUtils.getTargetClass(managedBean);
	ManagedResource mr = this.attributeSource.getManagedResource(managedClass);

	// Check that an object name has been specified.
	if (mr != null && StringUtils.hasText(mr.getObjectName())) {
		return ObjectNameManager.getInstance(mr.getObjectName());
	}
	else {
		try {
			return ObjectNameManager.getInstance(beanKey);
		}
		catch (MalformedObjectNameException ex) {
			String domain = this.defaultDomain;
			if (domain == null) {
				domain = ClassUtils.getPackageName(managedClass);
			}
			Hashtable<String, String> properties = new Hashtable<String, String>();
			properties.put("type", ClassUtils.getShortName(managedClass));
			properties.put("name", beanKey);
			return ObjectNameManager.getInstance(domain, properties);
		}
	}
}
 
源代码12 项目: Tomcat7.0.67   文件: UserMBean.java
/**
 * Return the MBean Names of all groups this user is a member of.
 */
public String[] getGroups() {

    User user = (User) this.resource;
    ArrayList<String> results = new ArrayList<String>();
    Iterator<Group> groups = user.getGroups();
    while (groups.hasNext()) {
        Group group = null;
        try {
            group = groups.next();
            ObjectName oname =
                MBeanUtils.createObjectName(managed.getDomain(), group);
            results.add(oname.toString());
        } catch (MalformedObjectNameException e) {
            IllegalArgumentException iae = new IllegalArgumentException
                ("Cannot create object name for group " + group);
            iae.initCause(e);
            throw iae;
        }
    }
    return results.toArray(new String[results.size()]);

}
 
源代码13 项目: scheduling   文件: RMRest.java
@Override
public Map<String, Map<String, Object>> getNodesMBeanHistory(String sessionId, List<String> nodesJmxUrl,
        String objectName, List<String> attrs, String range)
        throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException,
        NotConnectedException, MalformedObjectNameException, NullPointerException, MBeanException {

    // checking that still connected to the RM
    RMProxyUserInterface rmProxy = checkAccess(sessionId);
    return nodesJmxUrl.stream().collect(Collectors.toMap(nodeJmxUrl -> nodeJmxUrl, nodeJmxUrl -> {
        try {
            return processHistoryResult(rmProxy.getNodeMBeanHistory(nodeJmxUrl, objectName, attrs, range), range);
        } catch (Exception e) {
            LOGGER.error(e);
            return Collections.EMPTY_MAP;
        }
    }));
}
 
源代码14 项目: cxf   文件: ManagementConsole.java
ObjectName getEndpointObjectName()
    throws MalformedObjectNameException, NullPointerException {
    StringBuilder buffer = new StringBuilder(128);
    buffer.append(ManagementConstants.DEFAULT_DOMAIN_NAME).append(":type=Bus.Service.Endpoint,");
    buffer.append(ManagementConstants.SERVICE_NAME_PROP + "=\"" + serviceName + "\",");
    buffer.append(ManagementConstants.PORT_NAME_PROP + "=\"" + portName + "\",*");
    return new ObjectName(buffer.toString());
}
 
源代码15 项目: gemfirexd-oss   文件: LauncherLifecycleCommands.java
protected MemberMXBean getMemberMXBean(final String serviceName, final String member) throws IOException {
  assertState(isConnectedAndReady(), "Gfsh must be connected in order to get proxy to a GemFire Member MBean.");

  MemberMXBean memberBean = null;

  try {
    String objectNamePattern = ManagementConstants.OBJECTNAME__PREFIX;

    objectNamePattern += (StringUtils.isBlank(serviceName) ? StringUtils.EMPTY_STRING
      : "service=" + serviceName + StringUtils.COMMA_DELIMITER);
    objectNamePattern += "type=Member,*";

    // NOTE throws a MalformedObjectNameException, however, this should not happen since the ObjectName is constructed
    // here in a conforming pattern
    final ObjectName objectName = ObjectName.getInstance(objectNamePattern);

    final QueryExp query = Query.or(
      Query.eq(Query.attr("Name"), Query.value(member)),
      Query.eq(Query.attr("Id"), Query.value(member))
    );

    final Set<ObjectName> memberObjectNames = getGfsh().getOperationInvoker().queryNames(objectName, query);

    if (!memberObjectNames.isEmpty()) {
      memberBean = getGfsh().getOperationInvoker().getMBeanProxy(memberObjectNames.iterator().next(), MemberMXBean.class);
    }
  }
  catch (MalformedObjectNameException e) {
    getGfsh().logSevere(e.getMessage(), e);
  }

  return memberBean;
}
 
源代码16 项目: openjdk-jdk9   文件: Util.java
public static ObjectName newObjectName(String string) {
    try {
        return new ObjectName(string);
    } catch (MalformedObjectNameException e) {
        throw new IllegalArgumentException(e);
    }
}
 
源代码17 项目: gemfirexd-oss   文件: LauncherLifecycleCommands.java
protected MemberMXBean getMemberMXBean(final String serviceName, final String member) throws IOException {
  assertState(isConnectedAndReady(), "Gfsh must be connected in order to get proxy to a GemFire Member MBean.");

  MemberMXBean memberBean = null;

  try {
    String objectNamePattern = ManagementConstants.OBJECTNAME__PREFIX;

    objectNamePattern += (StringUtils.isBlank(serviceName) ? StringUtils.EMPTY_STRING
      : "service=" + serviceName + StringUtils.COMMA_DELIMITER);
    objectNamePattern += "type=Member,*";

    // NOTE throws a MalformedObjectNameException, however, this should not happen since the ObjectName is constructed
    // here in a conforming pattern
    final ObjectName objectName = ObjectName.getInstance(objectNamePattern);

    final QueryExp query = Query.or(
      Query.eq(Query.attr("Name"), Query.value(member)),
      Query.eq(Query.attr("Id"), Query.value(member))
    );

    final Set<ObjectName> memberObjectNames = getGfsh().getOperationInvoker().queryNames(objectName, query);

    if (!memberObjectNames.isEmpty()) {
      memberBean = getGfsh().getOperationInvoker().getMBeanProxy(memberObjectNames.iterator().next(), MemberMXBean.class);
    }
  }
  catch (MalformedObjectNameException e) {
    getGfsh().logSevere(e.getMessage(), e);
  }

  return memberBean;
}
 
源代码18 项目: hottub   文件: RMIConnectorLogAttributesTest.java
private JMXConnector connectToServer(JMXConnectorServer server) throws IOException, MalformedObjectNameException, NullPointerException, InstanceAlreadyExistsException, MBeanRegistrationException, NotCompliantMBeanException, ReflectionException, MBeanException {
    JMXServiceURL url = server.getAddress();
    Map<String, Object> env = new HashMap<String, Object>();
    JMXConnector connector = JMXConnectorFactory.connect(url, env);

    System.out.println("DEBUG: Client connected to RMI at: " + url);

    return connector;
}
 
private static MBeanPermission getMBeanPermission(Class mbeanClass, String objectName, String action) {
    try {
        return new MBeanPermission(mbeanClass.getName(), "-", ObjectName.getInstance(objectName), action);
    } catch (MalformedObjectNameException | NullPointerException ex) {
    }
    return new MBeanPermission(mbeanClass + "#-[" + objectName + "]", action);
}
 
源代码20 项目: cxf   文件: InstrumentationManagerImpl.java
private ObjectName getDelegateName() throws JMException {
    try {
        return (ObjectName)MBeanServerDelegate.class.getField("DELEGATE_NAME").get(null);
    } catch (Throwable t) {
        //ignore, likely on Java5
    }
    try {
        return new ObjectName("JMImplementation:type=MBeanServerDelegate");
    } catch (MalformedObjectNameException e) {
        JMException jme = new JMException(e.getMessage());
        jme.initCause(e);
        throw jme;
    }
}
 
源代码21 项目: java-technology-stack   文件: LiveBeansViewTests.java
@Test
public void registerUnregisterSingleContext() throws MalformedObjectNameException {
	this.environment.setProperty(LiveBeansView.MBEAN_DOMAIN_PROPERTY_NAME, this.name.getMethodName());
	ConfigurableApplicationContext context = createApplicationContext("app");
	assertEquals(0, searchLiveBeansViewMeans().size());
	LiveBeansView.registerApplicationContext(context);
	assertSingleLiveBeansViewMbean("app");
	LiveBeansView.unregisterApplicationContext(context);
	assertEquals(0, searchLiveBeansViewMeans().size());
}
 
源代码22 项目: spliceengine   文件: JmxDatabaseAdminstrator.java
@Override
public String getDatabaseProperty(final String key) throws SQLException{
    DatabasePropertyManagement dpm = null;
    try {
        dpm = JMXUtils.getLocalMBeanProxy(JMXUtils.DATABASE_PROPERTY_MANAGEMENT, DatabasePropertyManagement.class);
    }catch(MalformedObjectNameException|IOException e){
        throw PublicAPI.wrapStandardException(Exceptions.parseException(e));
    }
    return dpm.getDatabaseProperty(key);
}
 
源代码23 项目: openjdk-8   文件: Util.java
public static ObjectName newObjectName(String string) {
    try {
        return new ObjectName(string);
    } catch (MalformedObjectNameException e) {
        throw new IllegalArgumentException(e);
    }
}
 
源代码24 项目: Tomcat8-Source-Read   文件: BasicDataSource.java
@Override
public ObjectName preRegister(final MBeanServer server, final ObjectName objectName) {
    final String requestedName = getJmxName();
    if (requestedName != null) {
        try {
            registeredJmxObjectName = ObjectNameWrapper.wrap(requestedName);
        } catch (final MalformedObjectNameException e) {
            log.warn("The requested JMX name [" + requestedName + "] was not valid and will be ignored.");
        }
    }
    if (registeredJmxObjectName == null) {
        registeredJmxObjectName = ObjectNameWrapper.wrap(objectName);
    }
    return ObjectNameWrapper.unwrap(registeredJmxObjectName);
}
 
源代码25 项目: LagMonitor   文件: DumpCommand.java
public Object invokeBeanCommand(String beanName, String command, Object[] args, String[] signature)
        throws MalformedObjectNameException, MBeanException, InstanceNotFoundException, ReflectionException {
    MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer();
    ObjectName beanObject = ObjectName.getInstance(beanName);

    return beanServer.invoke(beanObject, command, args, signature);
}
 
源代码26 项目: ignite   文件: CacheManager.java
/**
 * @param cacheName Cache name.
 * @param objName Object name.
 * @return Object name instance.
 */
private ObjectName getObjectName(String cacheName, String objName) {
    String mBeanName = "javax.cache:type=" + objName + ",CacheManager="
        + uri.toString().replaceAll(",|:|=|\n", ".")
        + ",Cache=" + cacheName.replaceAll(",|:|=|\n", ".");

    try {
        return new ObjectName(mBeanName);
    }
    catch (MalformedObjectNameException e) {
        throw new CacheException("Failed to create MBean name: " + mBeanName, e);
    }
}
 
@Test
public void testMutipleBasicRoles() throws MalformedObjectNameException {
   JMXAccessControlList controlList = new JMXAccessControlList();
   controlList.addToRoleAccess("org.myDomain", null, "listSomething", "admin", "view", "update");
   List<String> roles = controlList.getRolesForObject(new ObjectName("org.myDomain:*"), "listSomething");
   Assert.assertArrayEquals(roles.toArray(), new String[]{"admin", "view", "update"});
}
 
public JmxNotificationSubscriptionConfig<T> objectName(String val) {
    try {
        return objectName(new ObjectName(val));
    } catch (MalformedObjectNameException e) {
        throw new IllegalArgumentException("Invalid object name ("+val+")", e);
    }
}
 
源代码29 项目: javamelody   文件: JCacheInformations.java
private static Set<ObjectName> getJsr107CacheStatistics() {
	try {
		final ObjectName objectName = new ObjectName("javax.cache:type=CacheStatistics,*");
		return MBEAN_SERVER.queryNames(objectName, null);
	} catch (final MalformedObjectNameException e) {
		throw new IllegalStateException(e);
	}
}
 
/**
 * A validation test against the rules above to make sure they are INVALID. 
 */
@Test(expected=RuleEvaluationException.class)
public void testInvalidRules3() throws MBeanRegistrationException, InstanceNotFoundException,
    MalformedObjectNameException, NullPointerException, InterruptedException,
    RuleEvaluationException {

  evaluateRule(INVALID_RULE_3);
}
 
 类所在包
 同包方法