添加注释

This commit is contained in:
tanghc
2019-03-11 09:41:33 +08:00
parent 5645d01765
commit d74d15f5f3
4 changed files with 57 additions and 13 deletions

View File

@@ -36,26 +36,31 @@ public class BaseZuulConfiguration {
@Autowired @Autowired
protected RouteManager apiMetaManager; protected RouteManager apiMetaManager;
@Bean /**
SopRouteLocator sopRouteLocator(ZuulRouteRepository zuulRouteRepository) { * 路由存储
return new SopRouteLocator(zuulRouteRepository); * @return
} */
@Bean
ZuulZookeeperRouteManager zuulZookeeperRouteManager(Environment environment, ZuulRouteRepository zuulRouteRepository) {
return new ZuulZookeeperRouteManager(environment, zuulRouteRepository);
}
@Bean @Bean
ZuulRouteRepository zuulRouteRepository() { ZuulRouteRepository zuulRouteRepository() {
return new ZuulRouteRepository(); return new ZuulRouteRepository();
} }
/**
* 路由获取
* @param zuulRouteRepository
* @return
*/
@Bean @Bean
PreValidateFilter preValidateFilter() { SopRouteLocator sopRouteLocator(ZuulRouteRepository zuulRouteRepository) {
return new PreValidateFilter(); return new SopRouteLocator(zuulRouteRepository);
} }
/**
* 选取路由
* @param zuulRouteRepository
* @param proxyRequestHelper
* @return
*/
@Bean @Bean
public PreDecorationFilter preDecorationFilter(ZuulRouteRepository zuulRouteRepository, ProxyRequestHelper proxyRequestHelper) { public PreDecorationFilter preDecorationFilter(ZuulRouteRepository zuulRouteRepository, ProxyRequestHelper proxyRequestHelper) {
SopRouteLocator routeLocator = new SopRouteLocator(zuulRouteRepository); SopRouteLocator routeLocator = new SopRouteLocator(zuulRouteRepository);
@@ -65,16 +70,48 @@ public class BaseZuulConfiguration {
proxyRequestHelper); proxyRequestHelper);
} }
/**
* 路由管理
* @param environment
* @param zuulRouteRepository
* @return
*/
@Bean
ZuulZookeeperRouteManager zuulZookeeperRouteManager(Environment environment, ZuulRouteRepository zuulRouteRepository) {
return new ZuulZookeeperRouteManager(environment, zuulRouteRepository);
}
/**
* 前置校验
* @return
*/
@Bean
PreValidateFilter preValidateFilter() {
return new PreValidateFilter();
}
/**
* 错误处理扩展
* @return
*/
@Bean @Bean
ErrorFilter errorFilter() { ErrorFilter errorFilter() {
return new ErrorFilter(); return new ErrorFilter();
} }
/**
* 结果返回
* @return
*/
@Bean @Bean
PostResultFilter postResultFilter() { PostResultFilter postResultFilter() {
return new PostResultFilter(); return new PostResultFilter();
} }
/**
* 统一错误处理
* @return
*/
@Bean @Bean
ZuulErrorController baseZuulController() { ZuulErrorController baseZuulController() {
return ApiContext.getApiConfig().getZuulErrorController(); return ApiContext.getApiConfig().getZuulErrorController();

View File

@@ -1,6 +1,5 @@
package com.gitee.sop.gatewaycommon.zuul.route; package com.gitee.sop.gatewaycommon.zuul.route;
import com.gitee.sop.gatewaycommon.manager.RouteRepository;
import com.gitee.sop.gatewaycommon.param.ApiParam; import com.gitee.sop.gatewaycommon.param.ApiParam;
import com.gitee.sop.gatewaycommon.zuul.ZuulContext; import com.gitee.sop.gatewaycommon.zuul.ZuulContext;
import org.springframework.cloud.netflix.zuul.filters.Route; import org.springframework.cloud.netflix.zuul.filters.Route;
@@ -12,6 +11,7 @@ import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
* 路由定位
* @author tanghc * @author tanghc
*/ */
public class SopRouteLocator implements RouteLocator, Ordered { public class SopRouteLocator implements RouteLocator, Ordered {
@@ -32,6 +32,11 @@ public class SopRouteLocator implements RouteLocator, Ordered {
return zuulRouteRepository.listAll(); return zuulRouteRepository.listAll();
} }
/**
* 这里决定使用哪个路由
* @param path
* @return
*/
@Override @Override
public Route getMatchingRoute(String path) { public Route getMatchingRoute(String path) {
ApiParam param = ZuulContext.getApiParam(); ApiParam param = ZuulContext.getApiParam();

View File

@@ -11,6 +11,7 @@ import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
/** /**
* 本地存放路由内容的地方
* @author tanghc * @author tanghc
*/ */
public class ZuulRouteRepository implements RouteRepository<ZuulServiceRouteInfo, Route> { public class ZuulRouteRepository implements RouteRepository<ZuulServiceRouteInfo, Route> {

View File

@@ -8,6 +8,7 @@ import org.springframework.cloud.netflix.zuul.filters.Route;
import org.springframework.core.env.Environment; import org.springframework.core.env.Environment;
/** /**
* 路由内容管理,新增活修改路由
* @author tanghc * @author tanghc
*/ */
@Slf4j @Slf4j