
cloud.tianai.rpc.springboot.DefaultRpcProviderHandler Maven / Gradle / Ivy
package cloud.tianai.rpc.springboot;
import cloud.tianai.rpc.core.bootstrap.ServerBootstrap;
import cloud.tianai.rpc.remoting.api.RpcInvocationPostProcessor;
import cloud.tianai.rpc.springboot.exception.RpcProviderRegisterException;
import cloud.tianai.rpc.springboot.properties.RpcProperties;
import lombok.extern.slf4j.Slf4j;
import org.springframework.aop.support.AopUtils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.boot.context.event.ApplicationStartedEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.core.annotation.AnnotationAwareOrderComparator;
import org.springframework.util.CollectionUtils;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicBoolean;
import static cloud.tianai.rpc.common.constant.CommonConstant.WEIGHT_KEY;
/**
* @Author: 天爱有情
* @Date: 2020/05/01 17:42
* @Description: 默认的RpcProviderHandler执行器
*/
@Slf4j
public class DefaultRpcProviderHandler implements RpcProviderHandler, BeanFactoryAware, ApplicationListener {
/**
* 存储RpcProviderBean的容器.
*/
private Map
© 2015 - 2025 Weber Informatics LLC | Privacy Policy