diff --git a/spring-cloud-alibaba-dependencies/pom.xml b/spring-cloud-alibaba-dependencies/pom.xml index 62e2c443..4abfc39f 100644 --- a/spring-cloud-alibaba-dependencies/pom.xml +++ b/spring-cloud-alibaba-dependencies/pom.xml @@ -127,6 +127,18 @@ sentinel-dubbo-api ${project.version} + + com.alibaba.csp + sentinel-cluster-server-default + ${sentinel.version} + + + com.alibaba.csp + sentinel-cluster-client-default + ${sentinel.version} + + + org.apache.rocketmq rocketmq-client diff --git a/spring-cloud-alibaba-sentinel/pom.xml b/spring-cloud-alibaba-sentinel/pom.xml index dba86dfb..e3b46726 100644 --- a/spring-cloud-alibaba-sentinel/pom.xml +++ b/spring-cloud-alibaba-sentinel/pom.xml @@ -35,6 +35,16 @@ sentinel-dubbo-adapter + + com.alibaba.csp + sentinel-cluster-server-default + + + + com.alibaba.csp + sentinel-cluster-client-default + + org.springframework.cloud spring-cloud-starter-openfeign diff --git a/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/rest/SentinelClientHttpResponse.java b/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/rest/SentinelClientHttpResponse.java index 76e4a3b8..76d6d715 100644 --- a/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/rest/SentinelClientHttpResponse.java +++ b/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/rest/SentinelClientHttpResponse.java @@ -16,6 +16,13 @@ package org.springframework.cloud.alibaba.sentinel.rest; +import org.springframework.cloud.alibaba.sentinel.annotation.SentinelRestTemplate; +import org.springframework.cloud.alibaba.sentinel.custom.SentinelProtectInterceptor; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.http.client.AbstractClientHttpResponse; + import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; @@ -24,48 +31,50 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.springframework.cloud.alibaba.sentinel.annotation.SentinelRestTemplate; -import org.springframework.cloud.alibaba.sentinel.custom.SentinelProtectInterceptor; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.MediaType; -import org.springframework.http.client.AbstractClientHttpResponse; - /** * Using by {@link SentinelRestTemplate} and {@link SentinelProtectInterceptor} + * * @author Jim */ public class SentinelClientHttpResponse extends AbstractClientHttpResponse { - private final String BLOCK_STR = "RestTemplate request block by sentinel"; + private String blockResponse = "RestTemplate request block by sentinel"; - @Override - public int getRawStatusCode() throws IOException { - return HttpStatus.OK.value(); - } + public SentinelClientHttpResponse() { - @Override - public String getStatusText() throws IOException { - return BLOCK_STR; - } + } - @Override - public void close() { - // nothing do - } + public SentinelClientHttpResponse(String blockResponse) { + this.blockResponse = blockResponse; + } - @Override - public InputStream getBody() throws IOException { - return new ByteArrayInputStream(BLOCK_STR.getBytes()); - } + @Override + public int getRawStatusCode() throws IOException { + return HttpStatus.OK.value(); + } - @Override - public HttpHeaders getHeaders() { - Map> headers = new HashMap<>(); - headers.put(HttpHeaders.CONTENT_TYPE, - Arrays.asList(MediaType.APPLICATION_JSON_UTF8_VALUE)); - HttpHeaders httpHeaders = new HttpHeaders(); - httpHeaders.putAll(headers); - return httpHeaders; - } + @Override + public String getStatusText() throws IOException { + return blockResponse; + } + + @Override + public void close() { + // nothing do + } + + @Override + public InputStream getBody() throws IOException { + return new ByteArrayInputStream(blockResponse.getBytes()); + } + + @Override + public HttpHeaders getHeaders() { + Map> headers = new HashMap<>(); + headers.put(HttpHeaders.CONTENT_TYPE, + Arrays.asList(MediaType.APPLICATION_JSON_UTF8_VALUE)); + HttpHeaders httpHeaders = new HttpHeaders(); + httpHeaders.putAll(headers); + return httpHeaders; + } }