mx4j.remote.rmi
Class RMIConnectionInvoker

java.lang.Object
  extended bymx4j.remote.rmi.RMIConnectionInvoker
All Implemented Interfaces:
java.rmi.Remote, javax.management.remote.rmi.RMIConnection

public class RMIConnectionInvoker
extends java.lang.Object
implements javax.management.remote.rmi.RMIConnection

An RMIConnection that "converts" remote calls to MBeanServer calls, performing unwrapping of parameters and/or the needed actions.

Version:
$Revision: 1.12 $
See Also:
ClientInvoker

Constructor Summary
RMIConnectionInvoker(javax.management.MBeanServer server, java.lang.ClassLoader defaultLoader, java.util.Map environment)
           
 
Method Summary
 void addNotificationListener(javax.management.ObjectName name, javax.management.ObjectName listener, java.rmi.MarshalledObject filter, java.rmi.MarshalledObject handback, javax.security.auth.Subject delegate)
           
 java.lang.Integer[] addNotificationListeners(javax.management.ObjectName[] names, java.rmi.MarshalledObject[] filters, javax.security.auth.Subject[] delegates)
           
 void close()
           
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, java.rmi.MarshalledObject params, java.lang.String[] signature, javax.security.auth.Subject delegate)
           
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, javax.management.ObjectName loaderName, java.rmi.MarshalledObject params, java.lang.String[] signature, javax.security.auth.Subject delegate)
           
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, javax.management.ObjectName loaderName, javax.security.auth.Subject delegate)
           
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, javax.security.auth.Subject delegate)
           
 javax.management.remote.NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout)
           
 java.lang.Object getAttribute(javax.management.ObjectName name, java.lang.String attribute, javax.security.auth.Subject delegate)
           
 javax.management.AttributeList getAttributes(javax.management.ObjectName name, java.lang.String[] attributes, javax.security.auth.Subject delegate)
           
 java.lang.String getConnectionId()
           
 java.lang.String getDefaultDomain(javax.security.auth.Subject delegate)
           
 java.lang.String[] getDomains(javax.security.auth.Subject delegate)
           
 java.lang.Integer getMBeanCount(javax.security.auth.Subject delegate)
           
 javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName name, javax.security.auth.Subject delegate)
           
 javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName name, javax.security.auth.Subject delegate)
           
 java.lang.Object invoke(javax.management.ObjectName name, java.lang.String operationName, java.rmi.MarshalledObject params, java.lang.String[] signature, javax.security.auth.Subject delegate)
           
 boolean isInstanceOf(javax.management.ObjectName name, java.lang.String className, javax.security.auth.Subject delegate)
           
 boolean isRegistered(javax.management.ObjectName name, javax.security.auth.Subject delegate)
           
 java.util.Set queryMBeans(javax.management.ObjectName name, java.rmi.MarshalledObject query, javax.security.auth.Subject delegate)
           
 java.util.Set queryNames(javax.management.ObjectName name, java.rmi.MarshalledObject query, javax.security.auth.Subject delegate)
           
 void removeNotificationListener(javax.management.ObjectName name, javax.management.ObjectName listener, java.rmi.MarshalledObject filter, java.rmi.MarshalledObject handback, javax.security.auth.Subject delegate)
           
 void removeNotificationListener(javax.management.ObjectName name, javax.management.ObjectName listener, javax.security.auth.Subject delegate)
           
 void removeNotificationListeners(javax.management.ObjectName name, java.lang.Integer[] listenerIDs, javax.security.auth.Subject delegate)
           
 void setAttribute(javax.management.ObjectName name, java.rmi.MarshalledObject attribute, javax.security.auth.Subject delegate)
           
 javax.management.AttributeList setAttributes(javax.management.ObjectName name, java.rmi.MarshalledObject attributes, javax.security.auth.Subject delegate)
           
 void unregisterMBean(javax.management.ObjectName name, javax.security.auth.Subject delegate)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RMIConnectionInvoker

public RMIConnectionInvoker(javax.management.MBeanServer server,
                            java.lang.ClassLoader defaultLoader,
                            java.util.Map environment)
Method Detail

getConnectionId

public java.lang.String getConnectionId()
                                 throws java.io.IOException
Specified by:
getConnectionId in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   javax.security.auth.Subject delegate)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   java.io.IOException
Specified by:
createMBean in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
java.io.IOException

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   javax.management.ObjectName loaderName,
                                                   javax.security.auth.Subject delegate)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException,
                                                   java.io.IOException
Specified by:
createMBean in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
javax.management.InstanceNotFoundException
java.io.IOException

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   java.rmi.MarshalledObject params,
                                                   java.lang.String[] signature,
                                                   javax.security.auth.Subject delegate)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   java.io.IOException
Specified by:
createMBean in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
java.io.IOException

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   javax.management.ObjectName loaderName,
                                                   java.rmi.MarshalledObject params,
                                                   java.lang.String[] signature,
                                                   javax.security.auth.Subject delegate)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException,
                                                   java.io.IOException
Specified by:
createMBean in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
javax.management.InstanceNotFoundException
java.io.IOException

unregisterMBean

public void unregisterMBean(javax.management.ObjectName name,
                            javax.security.auth.Subject delegate)
                     throws javax.management.InstanceNotFoundException,
                            javax.management.MBeanRegistrationException,
                            java.io.IOException
Specified by:
unregisterMBean in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.MBeanRegistrationException
java.io.IOException

getObjectInstance

public javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName name,
                                                         javax.security.auth.Subject delegate)
                                                  throws javax.management.InstanceNotFoundException,
                                                         java.io.IOException
Specified by:
getObjectInstance in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException

queryMBeans

public java.util.Set queryMBeans(javax.management.ObjectName name,
                                 java.rmi.MarshalledObject query,
                                 javax.security.auth.Subject delegate)
                          throws java.io.IOException
Specified by:
queryMBeans in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

queryNames

public java.util.Set queryNames(javax.management.ObjectName name,
                                java.rmi.MarshalledObject query,
                                javax.security.auth.Subject delegate)
                         throws java.io.IOException
Specified by:
queryNames in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

isRegistered

public boolean isRegistered(javax.management.ObjectName name,
                            javax.security.auth.Subject delegate)
                     throws java.io.IOException
Specified by:
isRegistered in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

getMBeanCount

public java.lang.Integer getMBeanCount(javax.security.auth.Subject delegate)
                                throws java.io.IOException
Specified by:
getMBeanCount in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

getAttribute

public java.lang.Object getAttribute(javax.management.ObjectName name,
                                     java.lang.String attribute,
                                     javax.security.auth.Subject delegate)
                              throws javax.management.MBeanException,
                                     javax.management.AttributeNotFoundException,
                                     javax.management.InstanceNotFoundException,
                                     javax.management.ReflectionException,
                                     java.io.IOException
Specified by:
getAttribute in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.MBeanException
javax.management.AttributeNotFoundException
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException

getAttributes

public javax.management.AttributeList getAttributes(javax.management.ObjectName name,
                                                    java.lang.String[] attributes,
                                                    javax.security.auth.Subject delegate)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException,
                                                    java.io.IOException
Specified by:
getAttributes in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException

setAttribute

public void setAttribute(javax.management.ObjectName name,
                         java.rmi.MarshalledObject attribute,
                         javax.security.auth.Subject delegate)
                  throws javax.management.InstanceNotFoundException,
                         javax.management.AttributeNotFoundException,
                         javax.management.InvalidAttributeValueException,
                         javax.management.MBeanException,
                         javax.management.ReflectionException,
                         java.io.IOException
Specified by:
setAttribute in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.AttributeNotFoundException
javax.management.InvalidAttributeValueException
javax.management.MBeanException
javax.management.ReflectionException
java.io.IOException

setAttributes

public javax.management.AttributeList setAttributes(javax.management.ObjectName name,
                                                    java.rmi.MarshalledObject attributes,
                                                    javax.security.auth.Subject delegate)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException,
                                                    java.io.IOException
Specified by:
setAttributes in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException

invoke

public java.lang.Object invoke(javax.management.ObjectName name,
                               java.lang.String operationName,
                               java.rmi.MarshalledObject params,
                               java.lang.String[] signature,
                               javax.security.auth.Subject delegate)
                        throws javax.management.InstanceNotFoundException,
                               javax.management.MBeanException,
                               javax.management.ReflectionException,
                               java.io.IOException
Specified by:
invoke in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.MBeanException
javax.management.ReflectionException
java.io.IOException

getDefaultDomain

public java.lang.String getDefaultDomain(javax.security.auth.Subject delegate)
                                  throws java.io.IOException
Specified by:
getDefaultDomain in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

getDomains

public java.lang.String[] getDomains(javax.security.auth.Subject delegate)
                              throws java.io.IOException
Specified by:
getDomains in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

getMBeanInfo

public javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName name,
                                               javax.security.auth.Subject delegate)
                                        throws javax.management.InstanceNotFoundException,
                                               javax.management.IntrospectionException,
                                               javax.management.ReflectionException,
                                               java.io.IOException
Specified by:
getMBeanInfo in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.IntrospectionException
javax.management.ReflectionException
java.io.IOException

isInstanceOf

public boolean isInstanceOf(javax.management.ObjectName name,
                            java.lang.String className,
                            javax.security.auth.Subject delegate)
                     throws javax.management.InstanceNotFoundException,
                            java.io.IOException
Specified by:
isInstanceOf in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException

addNotificationListener

public void addNotificationListener(javax.management.ObjectName name,
                                    javax.management.ObjectName listener,
                                    java.rmi.MarshalledObject filter,
                                    java.rmi.MarshalledObject handback,
                                    javax.security.auth.Subject delegate)
                             throws javax.management.InstanceNotFoundException,
                                    java.io.IOException
Specified by:
addNotificationListener in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName name,
                                       javax.management.ObjectName listener,
                                       javax.security.auth.Subject delegate)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Specified by:
removeNotificationListener in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName name,
                                       javax.management.ObjectName listener,
                                       java.rmi.MarshalledObject filter,
                                       java.rmi.MarshalledObject handback,
                                       javax.security.auth.Subject delegate)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Specified by:
removeNotificationListener in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException

addNotificationListeners

public java.lang.Integer[] addNotificationListeners(javax.management.ObjectName[] names,
                                                    java.rmi.MarshalledObject[] filters,
                                                    javax.security.auth.Subject[] delegates)
                                             throws javax.management.InstanceNotFoundException,
                                                    java.io.IOException
Specified by:
addNotificationListeners in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException

removeNotificationListeners

public void removeNotificationListeners(javax.management.ObjectName name,
                                        java.lang.Integer[] listenerIDs,
                                        javax.security.auth.Subject delegate)
                                 throws javax.management.InstanceNotFoundException,
                                        javax.management.ListenerNotFoundException,
                                        java.io.IOException
Specified by:
removeNotificationListeners in interface javax.management.remote.rmi.RMIConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException

close

public void close()
           throws java.io.IOException
Specified by:
close in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException

fetchNotifications

public javax.management.remote.NotificationResult fetchNotifications(long clientSequenceNumber,
                                                                     int maxNotifications,
                                                                     long timeout)
                                                              throws java.io.IOException
Specified by:
fetchNotifications in interface javax.management.remote.rmi.RMIConnection
Throws:
java.io.IOException


Copyright © 2001-2005 The MX4J Contributors. All Rights Reserved.