[Groovy] Class JmxBeanFactory

  • groovy.jmx.builder.JmxBeanFactory

This factory returns the bean() node. This node is used to declaratively expose a POGO/POJO to be exported to the MBeanServer for management. You can use the builder node to declare the descriptor or embed the descriptor directly in the object being exposed using static variable descriptor (or jmx). You should note that embedded descriptor takes precedence over declared builder descriptor.

The following shows all of the different syntax forms supported by the node.


 bean(instance)
 bean(target:instance, name:ObjectName|"...", desc|description:"...")
 bean(target:instance,
     server:MBeanServerConnection
     name:ObjectName()|"...",
     desc|description:"...",
     attribs|attributes:"*",
     attribs|attributes:[]
     attribs|attributes:["attribName1","attribName2",..."attribNameN"]
     attribs|attributes:[
         "attribName0":"*",
         "attribName1":[desc|description:"...", default:value, writable|editable:true|false,...]
          "attribName2":[onChange:{event->
              // onChange event callback code here.
          ]
      ],

     ctors|constructors:"*",
     ctors|constructors:[
         "CtorName0":[],
         "CtorName1":["paramType1","paramType2"],
         "CtorName2":[
             desc|description:"...",
             params:[
                  "type0":"*"
                  "type1":[desc|description:"...", name:"...", ]
             ]
         ]
     ],

     ops|operations:"*",
     ops|operations:["opName1", "opName2", "opName3",...,"opNameN"],
     ops|operations:[
         "opName0":"*",
         "opName1":["type1","type2,"type3"]
         "opName2":[
             desc:"description",
             params:[
                 "type0":"*"
                 "type1":[desc|description:"...", name:"...", ],
                 "typeN":[desc|description:"...", name:"...", ],
             ],
         ],
         "opName3":[
             onCall:{event->
                 // onCall event callback code here.
}]
         ],

     listeners:[
         ListenerName:[
             event: "eventType", from:"object name"|ObjectName(),
             call:{event->
                 // handler code for event
}],
     ]
 )
 

Methods Summary

Methods
Type Params Return Type Name and description
boolean isLeaf()
Object newInstance(FactoryBuilderSupport builder, Object nodeName, Object nodeParam, Map nodeAttributes)
boolean onHandleNodeAttributes(FactoryBuilderSupport builder, Object node, Map nodeAttribs)
void onNodeCompleted(FactoryBuilderSupport builder, Object parentNode, Object thisNode)

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class AbstractFactory setParent, onNodeCompleted, onNodeChildren, setChild, isLeaf, onFactoryRegistration, onHandleNodeAttributes, isHandlesNodeChildren, wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll, newInstance

Method Detail

boolean isLeaf()

Object newInstance(FactoryBuilderSupport builder, Object nodeName, Object nodeParam, Map nodeAttributes)

boolean onHandleNodeAttributes(FactoryBuilderSupport builder, Object node, Map nodeAttribs)

void onNodeCompleted(FactoryBuilderSupport builder, Object parentNode, Object thisNode)

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.5.14/html/gapi/groovy/jmx/builder/JmxBeanFactory.html