public static Object object(ProxyFactory proxyFactory, Object[] targets) { Class superclass = ClassHierarchyIntrospector.getMostCommonSuperclass(targets); Class[] interfaces = ClassHierarchyIntrospector.getAllInterfaces(targets); Class[] proxyTypes = MulticastingInvoker.addIfClassProxyingSupportedAndNotObject(superclass, interfaces, proxyFactory); return object(proxyTypes, proxyFactory, targets);
public static Object object(Class[] types, ProxyFactory proxyFactory, Object[] targets) { return new MulticastingInvoker(types, proxyFactory, targets).proxy();
	public static Object object(ProxyFactory proxyFactory, Object[] targets) {	    Class superclass = ClassHierarchyIntrospector.getMostCommonSuperclass(targets);	    Class[] interfaces = ClassHierarchyIntrospector.getAllInterfaces(targets);	    Class[] proxyTypes = MulticastingInvoker.addIfClassProxyingSupportedAndNotObject(superclass, interfaces, proxyFactory);	    return object(proxyTypes, proxyFactory, targets);	}