use of com.alibaba.csp.sentinel.adapter.gateway.common.api.ApiPathPredicateItem in project RuoYi-Cloud-Plus by JavaLionLi.
the class ApiDefinitionEntity method fromApiDefinition.
public static ApiDefinitionEntity fromApiDefinition(String app, String ip, Integer port, ApiDefinition apiDefinition) {
ApiDefinitionEntity entity = new ApiDefinitionEntity();
entity.setApp(app);
entity.setIp(ip);
entity.setPort(port);
entity.setApiName(apiDefinition.getApiName());
Set<ApiPredicateItemEntity> predicateItems = new LinkedHashSet<>();
entity.setPredicateItems(predicateItems);
Set<ApiPredicateItem> apiPredicateItems = apiDefinition.getPredicateItems();
if (apiPredicateItems != null) {
for (ApiPredicateItem apiPredicateItem : apiPredicateItems) {
ApiPredicateItemEntity itemEntity = new ApiPredicateItemEntity();
predicateItems.add(itemEntity);
ApiPathPredicateItem pathPredicateItem = (ApiPathPredicateItem) apiPredicateItem;
itemEntity.setPattern(pathPredicateItem.getPattern());
itemEntity.setMatchStrategy(pathPredicateItem.getMatchStrategy());
}
}
return entity;
}
use of com.alibaba.csp.sentinel.adapter.gateway.common.api.ApiPathPredicateItem in project RuoYi-Cloud-Plus by JavaLionLi.
the class ApiDefinitionEntity method toApiDefinition.
public ApiDefinition toApiDefinition() {
ApiDefinition apiDefinition = new ApiDefinition();
apiDefinition.setApiName(apiName);
Set<ApiPredicateItem> apiPredicateItems = new LinkedHashSet<>();
apiDefinition.setPredicateItems(apiPredicateItems);
if (predicateItems != null) {
for (ApiPredicateItemEntity predicateItem : predicateItems) {
ApiPathPredicateItem apiPredicateItem = new ApiPathPredicateItem();
apiPredicateItems.add(apiPredicateItem);
apiPredicateItem.setMatchStrategy(predicateItem.getMatchStrategy());
apiPredicateItem.setPattern(predicateItem.getPattern());
}
}
return apiDefinition;
}
use of com.alibaba.csp.sentinel.adapter.gateway.common.api.ApiPathPredicateItem in project novel-cloud by 201206030.
the class GatewayConfiguration method initCustomizedApis.
private void initCustomizedApis() {
Set<ApiDefinition> definitions = new HashSet<>();
ApiDefinition api1 = new ApiDefinition("customized_api").setPredicateItems(new HashSet<ApiPredicateItem>() {
{
add(new ApiPathPredicateItem().setPattern("/api/**").setMatchStrategy(SentinelGatewayConstants.URL_MATCH_STRATEGY_PREFIX));
}
});
ApiDefinition api2 = new ApiDefinition("book_content_api").setPredicateItems(new HashSet<ApiPredicateItem>() {
{
add(new ApiPathPredicateItem().setPattern("/api/book/queryBookContent**").setMatchStrategy(SentinelGatewayConstants.URL_MATCH_STRATEGY_PREFIX));
}
});
definitions.add(api1);
definitions.add(api2);
GatewayApiDefinitionManager.loadApiDefinitions(definitions);
}
Aggregations