groovy.jmx.builder
Class JmxBuilderModelMBean

java.lang.Object
  extended by javax.management.modelmbean.RequiredModelMBean
      extended by groovy.jmx.builder.JmxBuilderModelMBean
All Implemented Interfaces:
EventListener, DynamicMBean, MBeanRegistration, ModelMBean, ModelMBeanNotificationBroadcaster, NotificationBroadcaster, NotificationEmitter, NotificationListener, PersistentMBean

public class JmxBuilderModelMBean
extends RequiredModelMBean
implements NotificationListener

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.

Author:
Vladimir Vivien

Constructor Summary
JmxBuilderModelMBean()
           
JmxBuilderModelMBean(ModelMBeanInfo mbi)
           
JmxBuilderModelMBean(Object objectRef)
           
 
Method Summary
 void addEventListeners(MBeanServer server, Map<String,Map> descriptor)
          Sets up event listeners for this MBean as described in the descriptor.
 void addOperationCallListeners(Map<String,Map> descriptor)
          Registers listeners for operation calls (i.e. method, getter, and setter calls) when invoked on this bean from the MBeanServer.
 void handleNotification(Notification note, Object handback)
           
 Object invoke(String opName, Object[] opArgs, String[] signature)
           
 void setManagedResource(Object obj)
           
 
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JmxBuilderModelMBean

public JmxBuilderModelMBean(Object objectRef)
                     throws MBeanException,
                            RuntimeOperationsException,
                            InstanceNotFoundException,
                            InvalidTargetObjectTypeException
Throws:
MBeanException
RuntimeOperationsException
InstanceNotFoundException
InvalidTargetObjectTypeException

JmxBuilderModelMBean

public JmxBuilderModelMBean()
                     throws MBeanException,
                            RuntimeOperationsException
Throws:
MBeanException
RuntimeOperationsException

JmxBuilderModelMBean

public JmxBuilderModelMBean(ModelMBeanInfo mbi)
                     throws MBeanException,
                            RuntimeOperationsException
Throws:
MBeanException
RuntimeOperationsException
Method Detail

setManagedResource

public void setManagedResource(Object obj)

addOperationCallListeners

public void addOperationCallListeners(Map<String,Map> descriptor)
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 layout item -> [Map[methodListener:[target:"", tpe:"", callback:&Closure], ... ,]]

Parameters:
descriptor - MetaMap descriptor containing description of operation call listeners

addEventListeners

public void addEventListeners(MBeanServer server,
                              Map<String,Map> descriptor)
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
Specified by:
invoke in interface DynamicMBean
Overrides:
invoke in class RequiredModelMBean
Throws:
MBeanException
ReflectionException

handleNotification

public void handleNotification(Notification note,
                               Object handback)
Specified by:
handleNotification in interface NotificationListener

Copyright © 2003-2010 The Codehaus. All rights reserved.