You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/04/12 02:39:46 UTC

[1/3] incubator-weex git commit: * [android] Use Pair instead of Exception in WXResourceUtils to imply an error occur.

Repository: incubator-weex
Updated Branches:
  refs/heads/0.12-dev c92617a6d -> 02487c9c8


* [android] Use Pair instead of Exception in WXResourceUtils to imply an error occur.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/2d59d14b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/2d59d14b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/2d59d14b

Branch: refs/heads/0.12-dev
Commit: 2d59d14b308ae8b79f3b4557c9ac92832f9ad19d
Parents: e1be952
Author: YorkShen <sh...@gmail.com>
Authored: Mon Mar 27 11:12:36 2017 +0800
Committer: YorkShen <sh...@gmail.com>
Committed: Mon Mar 27 11:12:36 2017 +0800

----------------------------------------------------------------------
 .../com/taobao/weex/utils/WXResourceUtils.java  | 105 +++++++++----------
 .../taobao/weex/utils/WXResourceUtilsTest.java  |  13 +--
 2 files changed, 50 insertions(+), 68 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/2d59d14b/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java b/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
index cafdb53..4be2fbd 100755
--- a/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
+++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
@@ -208,6 +208,7 @@ import android.graphics.Color;
 import android.graphics.LinearGradient;
 import android.graphics.Shader;
 import android.support.annotation.NonNull;
+import android.support.v4.util.Pair;
 import android.text.TextUtils;
 
 import java.util.ArrayList;
@@ -424,18 +425,18 @@ public class WXResourceUtils {
     color = color.trim(); //remove non visible codes
 
     int resultColor = defaultColor;
-    try {
-      ColorConvertHandler[] handlers = ColorConvertHandler.values();
-      for (ColorConvertHandler handler : handlers) {
-        try {
-          resultColor = handler.handle(color);
+    Pair<Boolean, Integer> result;
+    ColorConvertHandler[] handlers = ColorConvertHandler.values();
+    for (ColorConvertHandler handler : handlers) {
+      try {
+        result = handler.handle(color);
+        if (result.first) {
+          resultColor = result.second;
           break;
-        } catch (IllegalArgumentException e) {
-          WXLogUtils.v("Color", "Color convert fails");
         }
+      } catch (RuntimeException e) {
+        WXLogUtils.v("Color_Parser", WXLogUtils.getStackTrace(e));
       }
-    } catch (Exception e) {
-      WXLogUtils.e("WXResourceUtils getColor failed: " + color);
     }
     return resultColor;
   }
@@ -548,70 +549,58 @@ public class WXResourceUtils {
   enum ColorConvertHandler {
     NAMED_COLOR_HANDLER {
       @Override
-      int handle(String rawColor) {
-        try {
-          return colorMap.get(rawColor);
-        } catch (RuntimeException e) {
-          throw new IllegalArgumentException(e);
+      @NonNull Pair<Boolean, Integer> handle(String rawColor) {
+        if (colorMap.containsKey(rawColor)) {
+          return new Pair<>(Boolean.TRUE, colorMap.get(rawColor));
+        } else {
+          return new Pair<>(Boolean.FALSE, Color.TRANSPARENT);
         }
       }
     },
     RGB_HANDLER {
       @Override
-      int handle(String rawColor) {
-        try {
-          if (rawColor.length() == 4) {
-            //#eee, #333
-            int r, g, b;
-            r = Integer.parseInt(rawColor.substring(1, 2), HEX);
-            g = Integer.parseInt(rawColor.substring(2, 3), HEX);
-            b = Integer.parseInt(rawColor.substring(3, 4), HEX);
-            return Color.rgb(r + (r << 4), g + (g << 4), b + (b << 4));
-          } else if (rawColor.length() == 7 || rawColor.length() == 9) {
-            //#eeeeee, #333333
-            return Color.parseColor(rawColor);
-          } else {
-            throw new IllegalArgumentException("ColorConvertHandler invalid color: " + rawColor);
-          }
-        } catch (RuntimeException e) {
-          throw new IllegalArgumentException(e);
+      @NonNull Pair<Boolean, Integer> handle(String rawColor) {
+        if (rawColor.length() == 4) {
+          //#eee, #333
+          int r, g, b;
+          r = Integer.parseInt(rawColor.substring(1, 2), HEX);
+          g = Integer.parseInt(rawColor.substring(2, 3), HEX);
+          b = Integer.parseInt(rawColor.substring(3, 4), HEX);
+          return new Pair<>(Boolean.TRUE, Color.rgb(r + (r << 4), g + (g << 4), b + (b << 4)));
+        } else if (rawColor.length() == 7 || rawColor.length() == 9) {
+          //#eeeeee, #333333
+          return new Pair<>(Boolean.TRUE, Color.parseColor(rawColor));
+        } else {
+          return new Pair<>(Boolean.FALSE, Color.TRANSPARENT);
         }
       }
     },
     FUNCTIONAL_RGB_HANDLER {
       @Override
-      int handle(String rawColor) {
-        try {
-          SingleFunctionParser<Integer> functionParser = new SingleFunctionParser<>(rawColor, FUNCTIONAL_RGB_MAPPER);
-          List<Integer> rgb = functionParser.parse(RGB);
-          if (rgb.size() == RGB_SIZE) {
-            return Color.rgb(rgb.get(0), rgb.get(1), rgb.get(2));
-          } else {
-            throw new IllegalArgumentException("Conversion of functional RGB fails");
-          }
-        } catch (RuntimeException e) {
-          throw new IllegalArgumentException(e);
+      @NonNull Pair<Boolean, Integer> handle(String rawColor) {
+        SingleFunctionParser<Integer> functionParser = new SingleFunctionParser<>(rawColor, FUNCTIONAL_RGB_MAPPER);
+        List<Integer> rgb = functionParser.parse(RGB);
+        if (rgb.size() == RGB_SIZE) {
+          return new Pair<>(Boolean.TRUE, Color.rgb(rgb.get(0), rgb.get(1), rgb.get(2)));
+        } else {
+          return new Pair<>(Boolean.FALSE, Color.TRANSPARENT);
         }
       }
     },
 
     FUNCTIONAL_RGBA_HANDLER {
       @Override
-      int handle(String rawColor) {
-        try {
-          SingleFunctionParser<Number> functionParser = new SingleFunctionParser<>(rawColor, FUNCTIONAL_RGBA_MAPPER);
-          List<Number> rgba = functionParser.parse(RGBA);
-          if (rgba.size() == RGBA_SIZE) {
-            return Color.argb(
-                parseAlpha(rgba.get(3).floatValue()),
-                rgba.get(0).intValue(),
-                rgba.get(1).intValue(),
-                rgba.get(2).intValue());
-          } else {
-            throw new IllegalArgumentException("Conversion of functional RGBA fails");
-          }
-        } catch (RuntimeException e) {
-          throw new IllegalArgumentException(e);
+      @NonNull Pair<Boolean, Integer> handle(String rawColor) {
+        SingleFunctionParser<Number> functionParser = new SingleFunctionParser<>(rawColor, FUNCTIONAL_RGBA_MAPPER);
+        List<Number> rgba = functionParser.parse(RGBA);
+        if (rgba.size() == RGBA_SIZE) {
+          return new Pair<>(Boolean.TRUE, Color.argb(
+              parseAlpha(rgba.get(3).floatValue()),
+              rgba.get(0).intValue(),
+              rgba.get(1).intValue(),
+              rgba.get(2).intValue()));
+        } else {
+          return new Pair<>(Boolean.FALSE, Color.TRANSPARENT);
         }
       }
     };
@@ -622,7 +611,7 @@ public class WXResourceUtils {
      * @param rawColor color, maybe functional RGB(RGBA), #RGB, keywords color or transparent
      * @return #RRGGBB or #AARRGGBB
      */
-    abstract int handle(String rawColor) throws IllegalArgumentException;
+    @NonNull abstract Pair<Boolean, Integer> handle(String rawColor);
 
     /**
      * Parse alpha gradient of color from range 0-1 to range 0-255

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/2d59d14b/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java b/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java
index 43918a4..99a1817 100644
--- a/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java
+++ b/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java
@@ -206,12 +206,9 @@ package com.taobao.weex.utils;
 
 import android.graphics.Shader;
 
-import com.taobao.weappplus_sdk.BuildConfig;
-
-import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.robolectric.RobolectricGradleTestRunner;
+import org.robolectric.RobolectricTestRunner;
 import org.robolectric.annotation.Config;
 
 import static org.junit.Assert.assertEquals;
@@ -221,14 +218,10 @@ import static org.junit.Assert.assertNull;
 /**
  * Created by caolijie on 16/8/4.
  */
-@RunWith(RobolectricGradleTestRunner.class)
-@Config(constants = BuildConfig.class,sdk = 19)
+@RunWith(RobolectricTestRunner.class)
+@Config(manifest = Config.NONE)
 public class WXResourceUtilsTest {
 
-  @Before
-  public void setUp() throws Exception {
-  }
-
   @Test
   public void testColor1() throws Exception {
     int color = WXResourceUtils.getColor("#ffffff");


[2/3] incubator-weex git commit: Merge branch 'android-color' of github.com:YorkShen/incubator-weex into 0.12-dev

Posted by so...@apache.org.
Merge branch 'android-color' of github.com:YorkShen/incubator-weex into 0.12-dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/70f42aa9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/70f42aa9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/70f42aa9

Branch: refs/heads/0.12-dev
Commit: 70f42aa9ecfb910507b1a79cabe4a67218436cd5
Parents: 953c607 2d59d14
Author: sospartan <so...@apache.org>
Authored: Wed Apr 12 10:39:11 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Wed Apr 12 10:39:11 2017 +0800

----------------------------------------------------------------------
 .../com/taobao/weex/utils/WXResourceUtils.java  | 105 +++++++++----------
 .../taobao/weex/utils/WXResourceUtilsTest.java  |  13 +--
 2 files changed, 50 insertions(+), 68 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/70f42aa9/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
----------------------------------------------------------------------
diff --cc android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
index 08324f3,4be2fbd..4690fb2
mode 100644,100755..100644
--- a/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java
+++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXResourceUtils.java

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/70f42aa9/android/sdk/src/test/java/com/taobao/weex/utils/WXResourceUtilsTest.java
----------------------------------------------------------------------


[3/3] incubator-weex git commit: Merge branch '0.12-dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into 0.12-dev

Posted by so...@apache.org.
Merge branch '0.12-dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into 0.12-dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/02487c9c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/02487c9c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/02487c9c

Branch: refs/heads/0.12-dev
Commit: 02487c9c8152d880619b9c9e6fc8aa7670c6c2db
Parents: 70f42aa c92617a
Author: sospartan <so...@apache.org>
Authored: Wed Apr 12 10:39:39 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Wed Apr 12 10:39:39 2017 +0800

----------------------------------------------------------------------
 ios/sdk/WeexSDK/Sources/Module/WXPickerModule.m | 122 ++++++++++++++++++-
 ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.m     |   6 +-
 2 files changed, 121 insertions(+), 7 deletions(-)
----------------------------------------------------------------------