This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit dcd5491c0c46b8af7899563cc9b9118da2f45bb6
Author: weichao666 <[email protected]>
AuthorDate: Wed Nov 7 13:33:24 2018 +0800

    [SCB-1012] use static strictRetriable and use Arrays.asList()
---
 .../loadbalance/DefaultRetryExtensionsFactory.java | 32 +++++++++-------------
 1 file changed, 13 insertions(+), 19 deletions(-)

diff --git 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/DefaultRetryExtensionsFactory.java
 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/DefaultRetryExtensionsFactory.java
index 05b99f7..f8ab374 100644
--- 
a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/DefaultRetryExtensionsFactory.java
+++ 
b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/DefaultRetryExtensionsFactory.java
@@ -20,6 +20,7 @@ import java.io.IOException;
 import java.net.ConnectException;
 import java.net.NoRouteToHostException;
 import java.net.SocketTimeoutException;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
@@ -45,6 +46,18 @@ public class DefaultRetryExtensionsFactory implements 
ExtensionsFactory {
   private static final Collection<String> ACCEPT_VALUES = Lists.newArrayList(
       RETRY_DEFAULT);
 
+  private static final Map<Class<? extends Throwable>, List<String>> 
strictRetriable =
+      ImmutableMap.<Class<? extends Throwable>, List<String>>builder()
+          .put(ConnectException.class, Arrays.asList())
+          .put(SocketTimeoutException.class, Arrays.asList())
+          /*
+           * deal with some special exceptions caused by the server side close 
the connection
+           */
+          .put(IOException.class, Arrays.asList(new String[] {"Connection 
reset by peer"}))
+          .put(VertxException.class, Arrays.asList(new String[] {"Connection 
was closed"}))
+          .put(NoRouteToHostException.class, Arrays.asList(new String[]{"Host 
is unreachable"}))
+          .build();
+
   @Override
   public boolean isSupport(String key, String value) {
     return ACCEPT_KEYS.contains(key) && ACCEPT_VALUES.contains(value);
@@ -54,20 +67,6 @@ public class DefaultRetryExtensionsFactory implements 
ExtensionsFactory {
     return new DefaultLoadBalancerRetryHandler(
         Configuration.INSTANCE.getRetryOnSame(microservice),
         Configuration.INSTANCE.getRetryOnNext(microservice), true) {
-      private List<Class<? extends Throwable>> retriable = Lists
-          .newArrayList(ConnectException.class, SocketTimeoutException.class);
-
-      Map<Class<? extends Throwable>, List<String>> strictRetriable =
-          ImmutableMap.<Class<? extends Throwable>, List<String>>builder()
-              .put(ConnectException.class, Lists.newArrayList())
-              .put(SocketTimeoutException.class, Lists.newArrayList())
-              /*
-               * deal with some special exceptions caused by the server side 
close the connection
-               */
-              .put(IOException.class, Lists.newArrayList(new String[] 
{"Connection reset by peer"}))
-              .put(VertxException.class, Lists.newArrayList(new String[] 
{"Connection was closed"}))
-              .put(NoRouteToHostException.class, Lists.newArrayList(new 
String[]{"Host is unreachable"}))
-              .build();
 
       @Override
       public boolean isRetriableException(Throwable e, boolean sameServer) {
@@ -82,11 +81,6 @@ public class DefaultRetryExtensionsFactory implements 
ExtensionsFactory {
         return retriable;
       }
 
-      @Override
-      protected List<Class<? extends Throwable>> getRetriableExceptions() {
-        return this.retriable;
-      }
-
       public boolean isPresentAsCause(Throwable throwableToSearchIn) {
         int infiniteLoopPreventionCounter = 10;
         while (throwableToSearchIn != null && infiniteLoopPreventionCounter > 
0) {

Reply via email to