public List around()

in appactive-java-client/client-bridge/client-bridge-rpc-springcloud/client-bridge-rpc-springcloud-common/src/main/java/io/appactive/rpc/springcloud/common/consumer/ServerListFilterInterceptor.java [31:49]


    public List<Server> around(ProceedingJoinPoint pjp){
        logger.debug("ServerListFilterInterceptor at around {}", pjp.getSignature());
        List<Server> finalServers = null;
        try {
            Object result = pjp.proceed();
            if (result instanceof List){
                List list = (List)result;
                if (CollectionUtils.isNotEmpty(list) && list.get(0) instanceof Server){
                    List<Server> servers = (List<Server>)list;
                    logger.debug("origin servers {}", servers);
                    finalServers = ConsumerRouter.filter(servers);
                    logger.debug("filtered servers {}", finalServers);
                }
            }
        } catch (Throwable th) {
            logger.error("error filtering server list ", th);
        }
        return finalServers;
    }