1 /* 2 * @(#)MBeanServerForwarder.java 1.9 03/12/19 3 * 4 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 5 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. 6 */ 7 8 package javax.management.remote; 9 10 import javax.management.MBeanServer; 11 12 /** 13 * <p>An object of this class implements the MBeanServer interface and 14 * wraps another object that also implements that interface. 15 * Typically, an implementation of this interface performs some action 16 * in some or all methods of the <code>MBeanServer</code> interface 17 * before and/or after forwarding the method to the wrapped object. 18 * Examples include security checking and logging.</p> 19 * 20 * @since 1.5 21 * @since.unbundled 1.0 22 */ 23 public interface MBeanServerForwarder extends MBeanServer { 24 25 /** 26 * Returns the MBeanServer object to which requests will be forwarded. 27 * 28 * @return the MBeanServer object to which requests will be forwarded, 29 * or null if there is none. 30 * 31 * @see #setMBeanServer 32 */ 33 public MBeanServer getMBeanServer(); 34 35 /** 36 * Sets the MBeanServer object to which requests will be forwarded 37 * after treatment by this object. 38 * 39 * @param mbs the MBeanServer object to which requests will be forwarded. 40 * 41 * @exception IllegalArgumentException if this object is already 42 * forwarding to an MBeanServer object or if <code>mbs</code> is 43 * null or if <code>mbs</code> is identical to this object. 44 * 45 * @see #getMBeanServer 46 */ 47 public void setMBeanServer(MBeanServer mbs); 48 } 49