For an MBean defined in the Java class BeanName, the proxygen compiler generates:
A Java interface (BeanNameProxyMBean), which defines the methods of the MBean that are accessible to a Java manager.
A Java proxy (BeanNameProxy), which implements the methods defined in the Java interface BeanNameProxyMBean.
For example, when an MBean representing a Java class named Simple is compiled, proxygen generates the source code of:
A Java interface named SimpleProxyMBean.
A Java class named SimpleProxy, which implements the SimpleProxyMBean interface.