I've been not able to use depends-list to know during runtime how many MBeans does the system administrator has defined for an specific topic.
My definition of the bean:
<mbean code="MyBean"
name="x:service=MyBean" xmbean-dd="">
<xmbean>
<class>x.MyBean</class>
<depends-list optional-attribute-name="DynamicListBeans">
<depends-list-element>y:service=DynamicBean,name=A</depends-list-element>
<depends-list-element>y:service=DynamicBean,name=B</depends-list-element>
</depends-list>
<operation>
<description>Refreshes dynamic beans that could be edited by the end user.
</description>
<name>refreshConfigurationFromJmxLists</name>
</operation>
</xmbean>
</mbean>
My class:
public class MyBean implements MyBeanMXBean {
private List<ObjectName> dynamicListBeans;
@Override
public List<ObjectName> getDynamicListBeans() {
return dynamicListBeans;
}
@Override
public void setDynamicListBeans(List<ObjectName> dynamicListBeans) {
this.dynamicListBeans = dynamicListBeans;
}
public void refreshConfigurationFromJmxLists() {
System.out.println(dynamicListBeans.size());
}
}
MyBeanMXBean is defining both, getter and setter for dynamicListBeans, and the operation refreshConfigurationFromJmxLists.
During execution, refreshConfigurationFromJmxLists is pringing a size of zero for the list, so JBoss didn't set the names name=A and name=B
Does anybody know if there is anything I'm misunderstanding or missing?
Help or clues will be highly appreciated, kind regards.