Extract all NativeArray/NativeMap from OnLoad.cpp

Summary: These will, eventually, need to be moved to the new bridge and so must become standalone things. For *NativeArray, this is almost just moving them out into their own .h/.cpp files. The *NativeMaps are updated to be hybrids instead of countables (in addition to getting their own .h/.cpp).

Reviewed By: mhorowitz

Differential Revision: D3325169

fbshipit-source-id: 40cfcab92b3fb2310bcd4de8f39e82f85d404abd
This commit is contained in:
Chris Hopman
2016-06-01 16:16:15 -07:00
committed by Facebook Github Bot 2
parent 0d1d7ba2b7
commit 886a558f75
22 changed files with 823 additions and 578 deletions

View File

@@ -9,7 +9,7 @@
package com.facebook.react.bridge;
import com.facebook.jni.Countable;
import com.facebook.jni.HybridData;
import com.facebook.proguard.annotations.DoNotStrip;
import com.facebook.soloader.SoLoader;
@@ -17,18 +17,18 @@ import com.facebook.soloader.SoLoader;
* Base class for a Map whose keys and values are stored in native code (C++).
*/
@DoNotStrip
public abstract class NativeMap extends Countable {
public abstract class NativeMap {
static {
SoLoader.loadLibrary(ReactBridge.REACT_NATIVE_LIB);
}
public NativeMap() {
initialize();
public NativeMap(HybridData hybridData) {
mHybridData = hybridData;
}
@Override
public native String toString();
private native void initialize();
@DoNotStrip
private HybridData mHybridData;
}