Skip to content
This repository was archived by the owner on Jul 14, 2021. It is now read-only.

Commit d26517d

Browse files
committed
Update ArrayMap to ConcurrentHashMap.
1 parent 10f45e9 commit d26517d

16 files changed

Lines changed: 53 additions & 87 deletions

File tree

app/src/main/java/com/tmall/wireless/virtualviewdemo/vs/StringSupportImp.java

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,13 @@
2424

2525
package com.tmall.wireless.virtualviewdemo.vs;
2626

27-
import android.support.v4.util.ArrayMap;
28-
import android.text.TextUtils;
29-
3027
import android.util.Log;
28+
3129
import com.libra.expr.common.StringSupport;
3230
import com.libra.virtualview.common.StringBase;
33-
import com.tmall.wireless.vaf.virtualview.loader.CodeReader;
3431

35-
import java.util.ArrayList;
36-
import java.util.HashMap;
37-
import java.util.List;
3832
import java.util.Map;
33+
import java.util.concurrent.ConcurrentHashMap;
3934

4035
/**
4136
* Created by gujicheng on 17/3/27.
@@ -45,13 +40,13 @@ public class StringSupportImp extends StringBase implements StringSupport {
4540

4641
final private static String TAG = "StringSupportImp_TMTEST";
4742

48-
private Map<String, Integer> mString2Index = new ArrayMap<>();
43+
private Map<String, Integer> mString2Index = new ConcurrentHashMap<>();
4944

50-
private Map<Integer, String> mIndex2String = new ArrayMap<>();
45+
private Map<Integer, String> mIndex2String = new ConcurrentHashMap<>();
5146

52-
private Map<String, Integer> mSysString2Index = new ArrayMap<>();
47+
private Map<String, Integer> mSysString2Index = new ConcurrentHashMap<>();
5348

54-
private Map<Integer, String> mSysIndex2String = new ArrayMap<>();
49+
private Map<Integer, String> mSysIndex2String = new ConcurrentHashMap<>();
5550

5651
public StringSupportImp() {
5752
for (int i = 0; i < StringBase.STR_ID_SYS_KEY_COUNT; ++i) {

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ org.gradle.jvmargs=-Xmx2048m
4545
GROUP=com.alibaba.android
4646
ARTIFACT=virtualview
4747
VERSION=1
48-
VERSION_NAME=1.3.8.3
48+
VERSION_NAME=1.3.8.4
4949
PACKAGING_TYPE=aar
5050
systemProp.compileSdkVersion=26
5151
systemProp.targetSdkVersion=26

virtualview/src/main/java/com/tmall/wireless/vaf/expr/engine/NativeObjectManager.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424

2525
package com.tmall.wireless.vaf.expr.engine;
2626

27-
import android.support.v4.util.ArrayMap;
2827
import android.text.TextUtils;
2928
import android.util.Log;
3029

@@ -37,6 +36,7 @@
3736
import java.util.ArrayList;
3837
import java.util.List;
3938
import java.util.Map;
39+
import java.util.concurrent.ConcurrentHashMap;
4040

4141
/**
4242
* Created by gujicheng on 16/9/12.
@@ -45,7 +45,7 @@ public class NativeObjectManager {
4545
private final static String TAG = "NObjManager_TMTEST";
4646

4747
private List<ViewBase> mViews = new ArrayList<>();
48-
private Map<String, Object> mNativeObjects = new ArrayMap<>();
48+
private Map<String, Object> mNativeObjects = new ConcurrentHashMap<>();
4949
private StringSupport mStringLoader;
5050

5151
public void setStringManager(StringSupport sm) {

virtualview/src/main/java/com/tmall/wireless/vaf/framework/ViewManager.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,14 @@
2626

2727
import java.util.LinkedList;
2828
import java.util.List;
29+
import java.util.Map;
30+
import java.util.concurrent.ConcurrentHashMap;
2931

3032
import android.content.Context;
31-
import android.support.v4.util.ArrayMap;
3233
import android.text.TextUtils;
3334
import android.util.Log;
3435
import android.util.SparseArray;
36+
3537
import com.tmall.wireless.vaf.virtualview.ViewFactory;
3638
import com.tmall.wireless.vaf.virtualview.core.Layout;
3739
import com.tmall.wireless.vaf.virtualview.core.ViewBase;
@@ -46,7 +48,7 @@ public class ViewManager {
4648

4749
private ViewFactory mViewFactory = new ViewFactory();
4850

49-
private ArrayMap<String, List<ViewBase>> mViewCache = new ArrayMap<>();
51+
private ConcurrentHashMap<String, List<ViewBase>> mViewCache = new ConcurrentHashMap<>();
5052
private SparseArray<ViewBase> mUuidContainers = new SparseArray<>();
5153

5254
private VafContext mAppContext;
@@ -81,10 +83,10 @@ public ViewBase getViewFromUuid(int uuid) {
8183
}
8284

8385
public void destroy() {
84-
for (int i = 0; i < mViewCache.size(); ++i) {
85-
List<ViewBase> viewBases = mViewCache.valueAt(i);
86+
for (Map.Entry<String, List<ViewBase>> entry : mViewCache.entrySet()) {
87+
List<ViewBase> viewBases = entry.getValue();
8688
if (null != viewBases) {
87-
for ( int j = 0; j < viewBases.size(); ++j) {
89+
for (int j = 0; j < viewBases.size(); ++j) {
8890
ViewBase viewBase = viewBases.get(j);
8991
viewBase.destroy();
9092
ViewCache viewCache = viewBase.getViewCache();

virtualview/src/main/java/com/tmall/wireless/vaf/framework/cm/ComContainerTypeMap.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,14 @@
2424

2525
package com.tmall.wireless.vaf.framework.cm;
2626

27-
import android.support.v4.util.ArrayMap;
27+
import java.util.concurrent.ConcurrentHashMap;
2828

2929
/**
3030
* Created by gujicheng on 17/4/10.
3131
*/
3232

3333
public class ComContainerTypeMap {
34-
private ArrayMap<String, Integer> mMap = new ArrayMap<String, Integer>();
34+
private ConcurrentHashMap<String, Integer> mMap = new ConcurrentHashMap<String, Integer>();
3535

3636
public void register(String comMap, int containerType) {
3737
if (comMap != null && containerType > -1) {

virtualview/src/main/java/com/tmall/wireless/vaf/virtualview/Helper/BeanManager.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,12 @@
2424

2525
package com.tmall.wireless.vaf.virtualview.Helper;
2626

27-
import android.support.v4.util.ArrayMap;
2827
import android.util.Log;
2928
import com.libra.TextUtils;
3029
import com.tmall.wireless.vaf.virtualview.core.IBean;
3130

31+
import java.util.concurrent.ConcurrentHashMap;
32+
3233
/**
3334
* Created by longerian on 2017/7/12.
3435
*
@@ -40,7 +41,7 @@ public class BeanManager {
4041

4142
private final static String TAG = "BeanManager_TMTEST";
4243

43-
private ArrayMap<String, Class<? extends IBean>> mBeanArrayMap = new ArrayMap<>();
44+
private ConcurrentHashMap<String, Class<? extends IBean>> mBeanArrayMap = new ConcurrentHashMap<>();
4445

4546
public void register(String type, Class<? extends IBean> processor) {
4647
if (null != processor && !TextUtils.isEmpty(type)) {

virtualview/src/main/java/com/tmall/wireless/vaf/virtualview/Helper/NativeViewManager.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@
2424

2525
package com.tmall.wireless.vaf.virtualview.Helper;
2626

27-
import android.support.v4.util.ArrayMap;
2827
import com.libra.TextUtils;
2928

29+
import java.util.concurrent.ConcurrentHashMap;
30+
3031
/**
3132
* Created by longerian on 2017/7/12.
3233
*
@@ -38,7 +39,7 @@ public class NativeViewManager {
3839

3940
private final static String TAG = "CompactNativeManager_TMTEST";
4041

41-
private ArrayMap<String, Class<?>> mBeanArrayMap = new ArrayMap<>();
42+
private ConcurrentHashMap<String, Class<?>> mBeanArrayMap = new ConcurrentHashMap<>();
4243

4344
public void register(String type, Class<?> processor) {
4445
if (null != processor && !TextUtils.isEmpty(type)) {

virtualview/src/main/java/com/tmall/wireless/vaf/virtualview/Helper/ServiceManager.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,17 @@
2525
package com.tmall.wireless.vaf.virtualview.Helper;
2626

2727
import java.util.Map;
28+
import java.util.concurrent.ConcurrentHashMap;
2829

2930
import android.support.annotation.NonNull;
30-
import android.support.annotation.Nullable;
31-
import android.support.v4.util.ArrayMap;
3231

3332
/**
3433
* Use for communicate with outside class.
3534
* Created by mikeafc on 2017/8/24.
3635
*/
3736

3837
public class ServiceManager {
39-
private Map<Class<?>, Object> mServices = new ArrayMap<>();
38+
private Map<Class<?>, Object> mServices = new ConcurrentHashMap<>();
4039

4140
public <S> void register(@NonNull Class<S> type, @NonNull S service) {
4241
mServices.put(type, type.cast(service));

virtualview/src/main/java/com/tmall/wireless/vaf/virtualview/core/ArrayAdapter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@
2424

2525
package com.tmall.wireless.vaf.virtualview.core;
2626

27+
import java.util.concurrent.ConcurrentHashMap;
2728
import java.util.concurrent.atomic.AtomicInteger;
2829

29-
import android.support.v4.util.ArrayMap;
3030
import android.support.v4.util.SparseArrayCompat;
3131
import android.util.Log;
3232
import android.view.View;
@@ -47,7 +47,7 @@ public class ArrayAdapter extends Adapter {
4747
private final static String TAG = "ArrayAdapter_TMTEST";
4848

4949
private AtomicInteger mTypeId = new AtomicInteger(0);
50-
private ArrayMap<String, Integer> mTypeMap = new ArrayMap<>();
50+
private ConcurrentHashMap<String, Integer> mTypeMap = new ConcurrentHashMap<>();
5151
private SparseArrayCompat<String> mId2Types = new SparseArrayCompat<>();
5252
private JSONArray mData;
5353

virtualview/src/main/java/com/tmall/wireless/vaf/virtualview/core/ViewBase.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import java.util.Iterator;
2828
import java.util.List;
29+
import java.util.concurrent.ConcurrentHashMap;
2930

3031
import android.graphics.Bitmap;
3132
import android.graphics.Canvas;
@@ -36,7 +37,6 @@
3637
import android.graphics.drawable.Drawable;
3738
import android.os.Build.VERSION;
3839
import android.os.Trace;
39-
import android.support.v4.util.SimpleArrayMap;
4040
import android.text.TextUtils;
4141
import android.util.Log;
4242
import android.util.SparseArray;
@@ -166,7 +166,7 @@ public abstract class ViewBase implements IView {
166166
/**
167167
* Map used to store views' tags.
168168
*/
169-
private SimpleArrayMap<String, Object> mKeyedTags;
169+
private ConcurrentHashMap<String, Object> mKeyedTags;
170170

171171
protected ExprCode mClickCode;
172172
protected ExprCode mBeforeLoadDataCode;
@@ -439,7 +439,7 @@ public Object getTag(String key) {
439439

440440
public void setTag(String key, Object tag) {
441441
if (mKeyedTags == null) {
442-
mKeyedTags = new SimpleArrayMap<>();
442+
mKeyedTags = new ConcurrentHashMap<>();
443443
}
444444

445445
mKeyedTags.put(key, tag);

0 commit comments

Comments
 (0)