Package org.aoju.bus.limiter.intercept
Class LimiterAspectSupport
java.lang.Object
org.aoju.bus.limiter.intercept.LimiterAspectSupport
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanFactoryAware,org.springframework.beans.factory.InitializingBean,org.springframework.beans.factory.SmartInitializingSingleton
- Direct Known Subclasses:
LimiterInterceptor
public abstract class LimiterAspectSupport
extends Object
implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.SmartInitializingSingleton
实际的advisor
使用beanfactory的一些基础设施
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidprotected Objectexecute(org.aopalliance.intercept.MethodInvocation invocation, Object target, Method method, Object[] args) 执行protected Collection<LimiterExecutionContext>getLimiterOperationContexts(Collection<LimitedResource> limitedResources, Method method, Object[] args, Object target, Class<?> targetClass) protected LimitContextsValueWrapperlimitContexts(Collection<LimiterExecutionContext> contexts) protected voidreleaseContexts(Collection<LimiterExecutionContext> contexts) voidsetBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) voidsetLimitedResourceSource(LimitedResourceSource limitedResourceSource)
-
Constructor Details
-
LimiterAspectSupport
public LimiterAspectSupport()
-
-
Method Details
-
execute
protected Object execute(org.aopalliance.intercept.MethodInvocation invocation, Object target, Method method, Object[] args) throws Throwable 执行- Parameters:
invocation- 反射target- 目标method- 方法args- 参数- Returns:
- the object
- Throws:
Throwable- 异常
-
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- Specified by:
afterSingletonsInstantiatedin interfaceorg.springframework.beans.factory.SmartInitializingSingleton
-
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) throws org.springframework.beans.BeansException - Specified by:
setBeanFactoryin interfaceorg.springframework.beans.factory.BeanFactoryAware- Throws:
org.springframework.beans.BeansException
-
limitContexts
-
releaseContexts
-
getLimiterOperationContexts
protected Collection<LimiterExecutionContext> getLimiterOperationContexts(Collection<LimitedResource> limitedResources, Method method, Object[] args, Object target, Class<?> targetClass) -
getLimitedResourceSource
-
setLimitedResourceSource
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean
-