Package groovy.jmx.builder
Class JmxBuilderModelMBean
java.lang.Object
javax.management.modelmbean.RequiredModelMBean
groovy.jmx.builder.JmxBuilderModelMBean
- All Implemented Interfaces:
EventListener,DynamicMBean,MBeanRegistration,ModelMBean,ModelMBeanNotificationBroadcaster,NotificationBroadcaster,NotificationEmitter,NotificationListener,PersistentMBean
The JmxBuilderModelMBean is the MBean class that proxies exported POGO/POJO inside the MBeanServer.
When JmxBuilder exports an object instance, an instance of this class is created and exported inside the
MBeanServer.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an empty model MBean.JmxBuilderModelMBean(Object objectRef) Creates a model MBean for the supplied managed resource.Creates a model MBean backed by the supplied metadata. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddEventListeners(MBeanServer server, Map<String, Map<String, Object>> descriptor) Sets up event listeners for this MBean as described in the descriptor.voidRegisters listeners for operation calls (i.e.voidhandleNotification(Notification note, Object handback) Handles notifications received by this model MBean.Invokes the named operation and emits any configured call notifications.voidsetManagedResource(Object obj) Updates the managed resource exposed by this model MBean.Methods inherited from class javax.management.modelmbean.RequiredModelMBean
addAttributeChangeNotificationListener, addNotificationListener, getAttribute, getAttributes, getClassLoaderRepository, getMBeanInfo, getNotificationInfo, load, postDeregister, postRegister, preDeregister, preRegister, removeAttributeChangeNotificationListener, removeNotificationListener, removeNotificationListener, sendAttributeChangeNotification, sendAttributeChangeNotification, sendNotification, sendNotification, setAttribute, setAttributes, setManagedResource, setModelMBeanInfo, store
-
Constructor Details
-
JmxBuilderModelMBean
public JmxBuilderModelMBean(Object objectRef) throws MBeanException, RuntimeOperationsException, InstanceNotFoundException, InvalidTargetObjectTypeException Creates a model MBean for the supplied managed resource.- Parameters:
objectRef- the resource to expose- Throws:
MBeanException- if the resource cannot be registeredRuntimeOperationsException- if the supplied resource is invalidInstanceNotFoundException- if the resource cannot be foundInvalidTargetObjectTypeException- if the resource type is unsupported
-
JmxBuilderModelMBean
Creates an empty model MBean.- Throws:
MBeanException- if initialization failsRuntimeOperationsException- if the MBean cannot be initialized
-
JmxBuilderModelMBean
Creates a model MBean backed by the supplied metadata.- Parameters:
mbi- the model MBean metadata- Throws:
MBeanException- if initialization failsRuntimeOperationsException- if the MBean cannot be initialized
-
-
Method Details
-
setManagedResource
Updates the managed resource exposed by this model MBean.- Parameters:
obj- the resource to expose
-
addOperationCallListeners
Registers listeners for operation calls (i.e. method, getter, and setter calls) when invoked on this bean from the MBeanServer. Descriptor should contain a map with layoutitem -> [Map[methodListener:[target:"", tpe:"", callback:&Closure], ... ,]]- Parameters:
descriptor- MetaMap descriptor containing description of operation call listeners
-
addEventListeners
Sets up event listeners for this MBean as described in the descriptor. The descriptor contains a map with layout {item -> Map[event:"...", from:ObjectName, callback:&Closure],...,}- Parameters:
server- the MBeanServer is to be registered.descriptor- a map containing info about the event
-
invoke
public Object invoke(String opName, Object[] opArgs, String[] signature) throws MBeanException, ReflectionException Invokes the named operation and emits any configured call notifications.- Specified by:
invokein interfaceDynamicMBean- Overrides:
invokein classRequiredModelMBean- Parameters:
opName- the operation nameopArgs- the invocation argumentssignature- the argument signature- Returns:
- the invocation result
- Throws:
MBeanException- if the invocation failsReflectionException- if the method cannot be resolved
-
handleNotification
Handles notifications received by this model MBean.- Specified by:
handleNotificationin interfaceNotificationListener- Parameters:
note- the received notificationhandback- the handback object supplied at registration time
-