package com.wecloud.netty.dispatch.extend;

import com.wecloud.netty.dispatch.ActionContext;
import com.wecloud.netty.dispatch.common.ApplyInfo;
import org.springframework.core.MethodParameter;

import java.lang.reflect.Method;

/**
 * 切面
 * @author lixiaozhong
 */
public interface ActionMethodInterceptor {

	/**
	 *
	 * 方法切面
	 *
	 * @param actionContext
	 * @param object
	 * @param method
	 * @param array
	 * @param parameter
	 * @param request
	 * @param argumentBox
	 * @return
	 */
	ApplyInfo intercept(ActionContext actionContext, Object object, Method method, Object[] array, MethodParameter[] parameter, ActionRequest request, ArgumentBox argumentBox);
}
