[ 
https://issues.apache.org/jira/browse/ARIES-430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Felix Meschberger updated ARIES-430:
------------------------------------

    Description: 
As proposed on dev [1] I have hacked together a small piece of code which 
implements support for the whiteboard pattern for registering MBeans with MBean 
servers.

The code is in my Sling whiteboard at 
http://svn.apache.org/repos/asf/sling/whiteboard/fmeschbe/jmx-whiteboard but is 
intended to be added to the Aries JMX functionality.

The single-class implementation picks up DynamicMBean servies registered as 
"javax.management.DynamicMBean". Each such service is registered with each 
registered MBeanServer service (similar to how the framework MBeans are 
registered by jmx.core). The JMX ObjectName can either be provided with a 
"jmx.objectname" service registration property (String type) or the 
DynamicMBean may implement the MBeanRegistration interface in which case the 
ObjectName is provided by the preRegister method during registration.

This is just a first hack which has not really been tested but mainly serves to 
show the idea. It is currently implemented as a Declarative Services component 
but may as well be implemented as a regular class using ServerTracker instances 
and instantiated by the BundleActivator (which may be a good idea to make this 
as widely usable as possible - for example in Sling we don't currently use 
Blueprint, so a Blueprint based implementation would be a no-go for us ;-) )

If there would be interest in this, I would try to test and validate this piece 
with the hopes to get a release soon (may be released independently, hint hint 
;-) )


[1] http://markmail.org/message/p464v4gst2uifm5h

  was:
As proposed on dev [1] I have hacked together a small piece of code which 
implements support for the whiteboard pattern for registering MBeans with MBean 
servers.

The code is in my Sling whiteboard at 
https://svn.apache.org/repos/asf/sling/whiteboard/fmeschbe/jmx-whiteboard but 
is intended to be added to the Aries JMX functionality.

The single-class implementation picks up DynamicMBean servies registered as 
"javax.management.DynamicMBean". Each such service is registered with each 
registered MBeanServer service (similar to how the framework MBeans are 
registered by jmx.core). The JMX ObjectName can either be provided with a 
"jmx.objectname" service registration property (String type) or the 
DynamicMBean may implement the MBeanRegistration interface in which case the 
ObjectName is provided by the preRegister method during registration.

This is just a first hack which has not really been tested but mainly serves to 
show the idea. It is currently implemented as a Declarative Services component 
but may as well be implemented as a regular class using ServerTracker instances 
and instantiated by the BundleActivator (which may be a good idea to make this 
as widely usable as possible - for example in Sling we don't currently use 
Blueprint, so a Blueprint based implementation would be a no-go for us ;-) )

If there would be interest in this, I would try to test and validate this piece 
with the hopes to get a release soon (may be released independently, hint hint 
;-) )


[1] http://markmail.org/message/p464v4gst2uifm5h


> Whiteboard registration support for JMX DynamicMBeans
> -----------------------------------------------------
>
>                 Key: ARIES-430
>                 URL: https://issues.apache.org/jira/browse/ARIES-430
>             Project: Aries
>          Issue Type: New Feature
>          Components: JMX
>            Reporter: Felix Meschberger
>
> As proposed on dev [1] I have hacked together a small piece of code which 
> implements support for the whiteboard pattern for registering MBeans with 
> MBean servers.
> The code is in my Sling whiteboard at 
> http://svn.apache.org/repos/asf/sling/whiteboard/fmeschbe/jmx-whiteboard but 
> is intended to be added to the Aries JMX functionality.
> The single-class implementation picks up DynamicMBean servies registered as 
> "javax.management.DynamicMBean". Each such service is registered with each 
> registered MBeanServer service (similar to how the framework MBeans are 
> registered by jmx.core). The JMX ObjectName can either be provided with a 
> "jmx.objectname" service registration property (String type) or the 
> DynamicMBean may implement the MBeanRegistration interface in which case the 
> ObjectName is provided by the preRegister method during registration.
> This is just a first hack which has not really been tested but mainly serves 
> to show the idea. It is currently implemented as a Declarative Services 
> component but may as well be implemented as a regular class using 
> ServerTracker instances and instantiated by the BundleActivator (which may be 
> a good idea to make this as widely usable as possible - for example in Sling 
> we don't currently use Blueprint, so a Blueprint based implementation would 
> be a no-go for us ;-) )
> If there would be interest in this, I would try to test and validate this 
> piece with the hopes to get a release soon (may be released independently, 
> hint hint ;-) )
> [1] http://markmail.org/message/p464v4gst2uifm5h

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to