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(-)
----------------------------------------------------------------------