站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JBoss 4.0.1 sp1 server API Documentation 英文版文档

InvokerAdaptorService (JBoss Server API) - JBoss 4.0.1 sp1 server API Documentation 英文版文档


org.jboss.jmx.connector.invoker
Class InvokerAdaptorService

java.lang.Object
  extended byorg.jboss.mx.util.JBossNotificationBroadcasterSupport
      extended byorg.jboss.system.ServiceMBeanSupport
          extended byorg.jboss.jmx.connector.invoker.InvokerAdaptorService
All Implemented Interfaces:
InvokerAdaptorServiceMBean, javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, org.jboss.mx.server.ServerConstants, org.jboss.system.Service, org.jboss.system.ServiceMBean

public class InvokerAdaptorService
extends org.jboss.system.ServiceMBeanSupport
implements InvokerAdaptorServiceMBean, org.jboss.mx.server.ServerConstants

A JBoss service exposes an invoke(Invocation) operation that maps calls to the ExposedInterface onto the MBeanServer this service is registered with. It is used in conjunction with a proxy factory to expose the MBeanServer to remote clients through arbitrary protocols.

It sets up the correct classloader before unmarshalling the arguments, this relies on the ObjectName being seperate from from the other method arguments to avoid unmarshalling them before the classloader is determined from the ObjectName.

The interface is configurable, it must be similar to MBeanServer, though not necessarily derived from it

The invoker is configurable and must be specified

Version:
$Revision: 1.4.6.1.2.1 $
Author:
Adrian Brock, Scott.Stark@jboss.org

Field Summary
protected  HashMap remoteListeners
          A HashSet for the registered listeners
 
Fields inherited from class org.jboss.system.ServiceMBeanSupport
log, server, SERVICE_CONTROLLER_SIG, serviceName
 
Fields inherited from interface org.jboss.jmx.connector.invoker.InvokerAdaptorServiceMBean
OBJECT_NAME
 
Fields inherited from interface org.jboss.system.ServiceMBean
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED
 
Fields inherited from interface org.jboss.mx.server.ServerConstants
CLASS_REMOVED, CLASSLOADER, CLASSLOADER_ADDED, CLASSLOADER_REMOVED, DEFAULT_DOMAIN, DEFAULT_LOADER_NAME, DEFAULT_LOADER_REPOSITORY_CLASS, DEFAULT_MBEAN_REGISTRY_CLASS, DEFAULT_MBEAN_SERVER_BUILDER_CLASS, DEFAULT_REQUIRED_MODELMBEAN_CLASS, DEFAULT_SCOPED_REPOSITORY_CLASS, DEFAULT_SCOPED_REPOSITORY_PARSER_CLASS, IMPLEMENTATION_NAME, IMPLEMENTATION_VENDOR, IMPLEMENTATION_VERSION, JMI_DOMAIN, LOADER_REPOSITORY_CLASS_PROPERTY, MBEAN_REGISTRY, MBEAN_REGISTRY_CLASS_PROPERTY, MBEAN_SERVER_BUILDER_CLASS_PROPERTY, MBEAN_SERVER_CONFIGURATION, MBEAN_SERVER_DELEGATE, OPTIMIZE_REFLECTED_DISPATCHER, REQUIRED_MODELMBEAN_CLASS_PROPERTY, SPECIFICATION_NAME, SPECIFICATION_VENDOR, SPECIFICATION_VERSION, UNIFIED_LOADER_REPOSITORY_CLASS
 
Constructor Summary
InvokerAdaptorService()
           
 
Method Summary
 void addNotificationListener(javax.management.ObjectName name, RMINotificationListener listener, javax.management.NotificationFilter filter, Object handback)
           
 Class[] getExportedInterfaces()
           
 Map getMethodMap()
          Expose the service interface mapping as a read-only attribute
 Object invoke(Invocation invocation)
          Expose the MBeanServer service via JMX to invokers.
 void removeNotificationListener(javax.management.ObjectName name, RMINotificationListener listener)
           
 void setExportedInterfaces(Class[] exportedInterfaces)
           
protected  void startService()
           
protected  void stopService()
           
 
Methods inherited from class org.jboss.system.ServiceMBeanSupport
create, createService, destroy, destroyService, getLog, getName, getNextNotificationSequenceNumber, getObjectName, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, preRegister, start, stop
 
Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport
addNotificationListener, getNotificationInfo, handleNotification, removeNotificationListener, removeNotificationListener, sendNotification
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.system.ServiceMBean
getName, getState, getStateString, jbossInternalLifecycle
 
Methods inherited from interface org.jboss.system.Service
create, destroy, start, stop
 

Field Detail

remoteListeners

protected HashMap remoteListeners
A HashSet for the registered listeners

Constructor Detail

InvokerAdaptorService

public InvokerAdaptorService()
Method Detail

getExportedInterfaces

public Class[] getExportedInterfaces()
Specified by:
getExportedInterfaces in interface InvokerAdaptorServiceMBean

setExportedInterfaces

public void setExportedInterfaces(Class[] exportedInterfaces)
Specified by:
setExportedInterfaces in interface InvokerAdaptorServiceMBean

startService

protected void startService()
                     throws Exception
Throws:
Exception

stopService

protected void stopService()
                    throws Exception
Throws:
Exception

getMethodMap

public Map getMethodMap()
Expose the service interface mapping as a read-only attribute

Specified by:
getMethodMap in interface InvokerAdaptorServiceMBean
Returns:
A Map of the MBeanServer

invoke

public Object invoke(Invocation invocation)
              throws Exception
Expose the MBeanServer service via JMX to invokers.

Specified by:
invoke in interface InvokerAdaptorServiceMBean
Parameters:
invocation - A pointer to the invocation object
Returns:
Return value of method invocation.
Throws:
Exception - Failed to invoke method.

addNotificationListener

public void addNotificationListener(javax.management.ObjectName name,
                                    RMINotificationListener listener,
                                    javax.management.NotificationFilter filter,
                                    Object handback)
                             throws javax.management.InstanceNotFoundException,
                                    RemoteException
Throws:
javax.management.InstanceNotFoundException
RemoteException

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName name,
                                       RMINotificationListener listener)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       RemoteException
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
RemoteException


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.