diff --git a/neutrino-core/src/main/java/fun/asgc/neutrino/core/aop/Aop.java b/neutrino-core/src/main/java/fun/asgc/neutrino/core/aop/Aop.java index 500a5f10..96139ff8 100644 --- a/neutrino-core/src/main/java/fun/asgc/neutrino/core/aop/Aop.java +++ b/neutrino-core/src/main/java/fun/asgc/neutrino/core/aop/Aop.java @@ -53,10 +53,17 @@ public class Aop { * @return */ private static ProxyFactory getProxyFactory(Class clazz) { - if (ClassUtil.isInterface(clazz)) { - return Proxy.getProxyFactory(ProxyStrategy.JDK_DYNAMIC_PROXY); + switch (proxyStrategy) { + case AUTO: { + if (ClassUtil.isInterface(clazz)) { + return Proxy.getProxyFactory(ProxyStrategy.JDK_DYNAMIC_PROXY); + } + return Proxy.getProxyFactory(ProxyStrategy.ASGC_PROXY); + } + case ASGC_PROXY: return Proxy.getProxyFactory(ProxyStrategy.ASGC_PROXY); + case JDK_DYNAMIC_PROXY: Proxy.getProxyFactory(ProxyStrategy.JDK_DYNAMIC_PROXY); } - return Proxy.getProxyFactory(ProxyStrategy.ASGC_PROXY); + return null; } /**