⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jmxagent.java

📁 提供ESB 应用mule源代码 提供ESB 应用mule源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            }            mBeanServer = null;        }        initialized.set(false);    }    /**      * {@inheritDoc}     */    public void registered()    {        // nothing to do    }    /**      * {@inheritDoc}     */    public void unregistered()    {        // nothing to do    }    /**     * Register a Java Service Wrapper agent.     * @throws MuleException if registration failed     */    protected void registerWrapperService() throws MuleException    {        // WrapperManager to support restarts        final WrapperManagerAgent wmAgent = new WrapperManagerAgent();        if (muleContext.getRegistry().lookupAgent(wmAgent.getName()) == null)        {           muleContext.getRegistry().registerAgent(wmAgent);        }    }    protected void registerStatisticsService() throws NotCompliantMBeanException, MBeanRegistrationException,                                                      InstanceAlreadyExistsException, MalformedObjectNameException    {        ObjectName on = jmxSupport.getObjectName(jmxSupport.getDomainName(muleContext) + ":type=org.mule.Statistics,name=AllStatistics");        StatisticsService mBean = new StatisticsService();        mBean.setMuleContext(muleContext);        mBean.setEnabled(isEnableStatistics());        logger.debug("Registering statistics with name: " + on);        mBeanServer.registerMBean(mBean, on);        registeredMBeans.add(on);    }    protected void registerModelServices() throws NotCompliantMBeanException, MBeanRegistrationException,                                                  InstanceAlreadyExistsException, MalformedObjectNameException    {        for (Iterator iterator = muleContext.getRegistry().lookupObjects(Model.class).iterator(); iterator.hasNext();)        {            Model model = (Model) iterator.next();            ModelServiceMBean serviceMBean = new ModelService(model);            String rawName = serviceMBean.getName() + "(" + serviceMBean.getType() + ")";            String name = jmxSupport.escape(rawName);            ObjectName on = jmxSupport.getObjectName(jmxSupport.getDomainName(muleContext) + ":type=org.mule.Model,name=" + name);            logger.debug("Registering model with name: " + on);            mBeanServer.registerMBean(serviceMBean, on);            registeredMBeans.add(on);        }    }    protected void registerMuleService() throws NotCompliantMBeanException, MBeanRegistrationException,                                                InstanceAlreadyExistsException, MalformedObjectNameException    {        ObjectName on = jmxSupport.getObjectName(jmxSupport.getDomainName(muleContext) + ":type=org.mule.MuleContext,name=MuleServerInfo");        MuleServiceMBean serviceMBean = new MuleService(muleContext);        logger.debug("Registering mule with name: " + on);        mBeanServer.registerMBean(serviceMBean, on);        registeredMBeans.add(on);    }    protected void registerConfigurationService() throws NotCompliantMBeanException, MBeanRegistrationException,                                                         InstanceAlreadyExistsException, MalformedObjectNameException    {        ObjectName on = jmxSupport.getObjectName(jmxSupport.getDomainName(muleContext) + ":type=org.mule.Configuration,name=GlobalConfiguration");        MuleConfigurationServiceMBean serviceMBean = new MuleConfigurationService(muleContext.getConfiguration());        logger.debug("Registering configuration with name: " + on);        mBeanServer.registerMBean(serviceMBean, on);        registeredMBeans.add(on);    }    protected void registerServiceServices() throws NotCompliantMBeanException, MBeanRegistrationException,            InstanceAlreadyExistsException, MalformedObjectNameException    {        String rawName;        for (Iterator iterator = muleContext.getRegistry().lookupObjects(Service.class).iterator(); iterator.hasNext();)        {            rawName = ((Service) iterator.next()).getName();            final String name = jmxSupport.escape(rawName);            ObjectName on = jmxSupport.getObjectName(jmxSupport.getDomainName(muleContext) + ":type=org.mule.Service,name=" + name);            ServiceServiceMBean serviceMBean = new ServiceService(rawName);            logger.debug("Registering service with name: " + on);            mBeanServer.registerMBean(serviceMBean, on);            registeredMBeans.add(on);        }    }    protected void registerEndpointServices() throws NotCompliantMBeanException, MBeanRegistrationException,            InstanceAlreadyExistsException, MalformedObjectNameException    {        Iterator iter = muleContext.getRegistry().lookupObjects(Connector.class).iterator();        Connector connector;        while (iter.hasNext())        {            connector = (Connector) iter.next();            if (connector instanceof AbstractConnector)            {                for (Iterator iterator = ((AbstractConnector) connector).getReceivers().values().iterator(); iterator.hasNext();)                {                    EndpointServiceMBean mBean = new EndpointService((MessageReceiver) iterator.next());                    final String rawName = mBean.getName();                    final String name = jmxSupport.escape(rawName);                    if (logger.isInfoEnabled()) {                        logger.info("Attempting to register service with name: " + jmxSupport.getDomainName(muleContext) +                                                    ":type=org.mule.Endpoint,service=" +                                                    jmxSupport.escape(mBean.getComponentName()) +                                                    ",name=" + name);                    }                    ObjectName on = jmxSupport.getObjectName(                                                    jmxSupport.getDomainName(muleContext) +                                                    ":type=org.mule.Endpoint,service=" +                                                    jmxSupport.escape(mBean.getComponentName()) +                                                    ",name=" + name);                    mBeanServer.registerMBean(mBean, on);                    registeredMBeans.add(on);                    logger.info("Registered Endpoint Service with name: " + on);                }            }            else            {                logger.warn("Connector: " + connector                            + " is not an istance of AbstractConnector, cannot obtain Endpoint MBeans from it");            }        }    }    protected void registerConnectorServices() throws                                                MalformedObjectNameException,                                                NotCompliantMBeanException,                                                MBeanRegistrationException,                                                InstanceAlreadyExistsException    {        Iterator iter = muleContext.getRegistry().lookupObjects(Connector.class).iterator();        while (iter.hasNext())        {            Connector connector = (Connector) iter.next();            ConnectorServiceMBean mBean = new ConnectorService(connector);            final String rawName = mBean.getName();            final String name = jmxSupport.escape(rawName);            final String stringName = jmxSupport.getDomainName(muleContext) + ":type=org.mule.Connector,name=" + name;            if (logger.isDebugEnabled())            {                logger.debug("Attempting to register service with name: " + stringName);            }            ObjectName oName = jmxSupport.getObjectName(stringName);            mBeanServer.registerMBean(mBean, oName);            registeredMBeans.add(oName);            logger.info("Registered Connector Service with name " + oName);        }    }    /**     * @return Returns the createServer.     */    public boolean isCreateServer()    {        return createServer;    }    /**     * @param createServer The createServer to set.     */    public void setCreateServer(boolean createServer)    {        this.createServer = createServer;    }    /**     * @return Returns the locateServer.     */    public boolean isLocateServer()    {        return locateServer;    }    /**     * @param locateServer The locateServer to set.     */    public void setLocateServer(boolean locateServer)    {        this.locateServer = locateServer;    }    /**     * @return Returns the connectorServerUrl.     */    public String getConnectorServerUrl()    {        return connectorServerUrl;    }    /**     * @param connectorServerUrl The connectorServerUrl to set.     */    public void setConnectorServerUrl(String connectorServerUrl)    {        this.connectorServerUrl = connectorServerUrl;    }    /**     * @return Returns the enableStatistics.     */    public boolean isEnableStatistics()    {        return enableStatistics;    }    /**     * @param enableStatistics The enableStatistics to set.     */    public void setEnableStatistics(boolean enableStatistics)    {        this.enableStatistics = enableStatistics;    }    /**     * @return Returns the mBeanServer.     */    public MBeanServer getMBeanServer()    {        return mBeanServer;    }    /**     * @param mBeanServer The mBeanServer to set.     */    public void setMBeanServer(MBeanServer mBeanServer)    {        this.mBeanServer = mBeanServer;    }    /**     * Getter for property 'connectorServerProperties'.     *     * @return Value for property 'connectorServerProperties'.     */    public Map getConnectorServerProperties()    {        return connectorServerProperties;    }    /**     * Setter for property 'connectorServerProperties'. Set to {@code null} to use defaults ({@link     * #DEFAULT_CONNECTOR_SERVER_PROPERTIES}). Pass in an empty map to use no parameters. Passing a non-empty map will     * replace defaults.     *     * @param connectorServerProperties Value to set for property 'connectorServerProperties'.     */    public void setConnectorServerProperties(Map connectorServerProperties)    {        this.connectorServerProperties = connectorServerProperties;    }    /**     * Getter for property 'jmxSupportFactory'.     *     * @return Value for property 'jmxSupportFactory'.     */    public JmxSupportFactory getJmxSupportFactory()    {        return jmxSupportFactory;    }    /**     * Setter for property 'jmxSupportFactory'.     *     * @param jmxSupportFactory Value to set for property 'jmxSupportFactory'.     */    public void setJmxSupportFactory(JmxSupportFactory jmxSupportFactory)    {        this.jmxSupportFactory = jmxSupportFactory;    }    /**     * Setter for property 'credentials'.     *     * @param newCredentials Value to set for property 'credentials'.     */    public void setCredentials(final Map newCredentials)    {        this.credentials.clear();        if (newCredentials != null && !newCredentials.isEmpty())        {            this.credentials.putAll(newCredentials);        }    }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -