Example usage for com.facebook.react.bridge ReadableArray getMap

List of usage examples for com.facebook.react.bridge ReadableArray getMap

Introduction

In this page you can find the example usage for com.facebook.react.bridge ReadableArray getMap.

Prototype

@Nullable
    ReadableMap getMap(int index);

Source Link

Usage

From source file:com.adjust.nativemodule.AdjustUtil.java

License:Open Source License

/** 
 * toList converts a {@link ReadableArray} into an ArrayList. 
 * /*from  w  w w.  j  a  va 2  s .c  o  m*/
 * @param readableArray The ReadableArray to be conveted. 
 * @return An ArrayList containing the data that was in the ReadableArray. 
 */
public static List<Object> toList(@Nullable ReadableArray readableArray) {
    if (readableArray == null) {
        return null;
    }

    List<Object> result = new ArrayList<>(readableArray.size());

    for (int index = 0; index < readableArray.size(); index++) {
        ReadableType readableType = readableArray.getType(index);

        switch (readableType) {
        case Null:
            break;
        case Boolean:
            result.add(readableArray.getBoolean(index));
            break;
        case Number:
            // Can be int or double. 
            double tmp = readableArray.getDouble(index);

            if (tmp == (int) tmp) {
                result.add((int) tmp);
            } else {
                result.add(tmp);
            }

            break;
        case String:
            result.add(readableArray.getString(index));
            break;
        case Map:
            result.add(toMap(readableArray.getMap(index)));
            break;
        case Array:
            result = toList(readableArray.getArray(index));
            break;
        default:
            AdjustFactory.getLogger().error("Could not convert object with index: " + index + ".");
        }
    }

    return result;
}

From source file:com.amazonaws.reactnative.core.AWSRNClientMarshaller.java

License:Open Source License

/**
 * toList converts a {@link ReadableArray} into an ArrayList.
 *
 * @param readableArray The ReadableArray to be conveted.
 * @return An ArrayList containing the data that was in the ReadableArray.
 *///from w w  w.  j a  v a 2  s.c o  m
public static List<Object> readableArrayToList(final @Nullable ReadableArray readableArray) {
    if (readableArray == null) {
        return null;
    }

    List<Object> result = new ArrayList<>(readableArray.size());
    for (int index = 0; index < readableArray.size(); index++) {
        final ReadableType readableType = readableArray.getType(index);
        switch (readableType) {
        case Null:
            result.add(String.valueOf(index));
            break;
        case Boolean:
            result.add(readableArray.getBoolean(index));
            break;
        case Number:
            // Can be int or double.
            double tmp = readableArray.getDouble(index);
            if (tmp == (int) tmp) {
                result.add((int) tmp);
            } else {
                result.add(tmp);
            }
            break;
        case String:
            result.add(readableArray.getString(index));
            break;
        case Map:
            result.add(readableMapToMap(readableArray.getMap(index)));
            break;
        case Array:
            result = readableArrayToList(readableArray.getArray(index));
            break;
        default:
            throw new IllegalArgumentException("Could not convert object with index: " + index + ".");
        }
    }

    return result;
}

From source file:com.boundlessgeo.spatialconnect.jsbridge.RNSpatialConnect.java

License:Apache License

private ArrayList<Object> convertArrayToArrayList(ReadableArray readableArray) {
    ArrayList<Object> jsonArray = new ArrayList<>();
    for (int i = 0; i < readableArray.size(); i++) {
        switch (readableArray.getType(i)) {
        case Null:
            break;
        case Boolean:
            jsonArray.add(readableArray.getBoolean(i));
            break;
        case Number:
            jsonArray.add(readableArray.getDouble(i));
            break;
        case String:
            jsonArray.add(readableArray.getString(i));
            break;
        case Map:
            jsonArray.add(convertMapToHashMap(readableArray.getMap(i)));
            break;
        case Array:
            jsonArray.add(convertArrayToArrayList(readableArray.getArray(i)));
            break;
        }/*  ww w. ja va  2  s  .com*/
    }

    return jsonArray;
}

From source file:com.boundlessgeo.spatialconnect.jsbridge.SCBridge.java

License:Apache License

private static JSONArray convertArrayToJson(ReadableArray readableArray) throws JSONException {
    JSONArray array = new JSONArray();
    for (int i = 0; i < readableArray.size(); i++) {
        switch (readableArray.getType(i)) {
        case Null:
            break;
        case Boolean:
            array.put(readableArray.getBoolean(i));
            break;
        case Number:
            array.put(readableArray.getDouble(i));
            break;
        case String:
            array.put(readableArray.getString(i));
            break;
        case Map:
            array.put(convertMapToJson(readableArray.getMap(i)));
            break;
        case Array:
            array.put(convertArrayToJson(readableArray.getArray(i)));
            break;
        }/*www  .ja  v  a 2s .c  o  m*/
    }
    return array;
}

From source file:com.horcrux.svg.BezierTransformer.java

License:Open Source License

private void setControlPoints() {
    ReadableArray bezier = mBezierCurves.getArray(mCurrentBezierIndex++);

    if (bezier != null) {
        // set start point
        if (bezier.size() == 1) {
            mLastPoint = mP0 = getPointFromMap(bezier.getMap(0));
            setControlPoints();//from w  w w.  ja va2  s .  c o  m
        } else if (bezier.size() == 3) {
            mP1 = getPointFromMap(bezier.getMap(0));
            mP2 = getPointFromMap(bezier.getMap(1));
            mP3 = getPointFromMap(bezier.getMap(2));
        }
    }
}

From source file:com.ibatimesheet.RNJSONUtils.java

License:Apache License

public static JSONArray convertArrayToJson(ReadableArray readableArray) throws JSONException {
    JSONArray array = new JSONArray();
    for (int i = 0; i < readableArray.size(); i++) {
        switch (readableArray.getType(i)) {
        case Null:
            break;
        case Boolean:
            array.put(readableArray.getBoolean(i));
            break;
        case Number:
            array.put(readableArray.getDouble(i));
            break;
        case String:
            array.put(readableArray.getString(i));
            break;
        case Map:
            array.put(convertMapToJson(readableArray.getMap(i)));
            break;
        case Array:
            array.put(convertArrayToJson(readableArray.getArray(i)));
            break;
        }/*from w  w w. ja v  a2 s  .  c  o  m*/
    }
    return array;
}

From source file:com.microsoft.appcenter.reactnative.analytics.ReactNativeUtils.java

License:Open Source License

public static JSONArray convertReadableArrayToJsonArray(ReadableArray arr) throws JSONException {
    JSONArray jsonArr = new JSONArray();
    for (int i = 0; i < arr.size(); i++) {
        ReadableType type = arr.getType(i);
        switch (type) {
        case Map:
            jsonArr.put(convertReadableMapToJsonObject(arr.getMap(i)));
            break;
        case Array:
            jsonArr.put(convertReadableArrayToJsonArray(arr.getArray(i)));
            break;
        case String:
            jsonArr.put(arr.getString(i));
            break;
        case Number:
            Double number = arr.getDouble(i);
            if ((number == Math.floor(number)) && !Double.isInfinite(number)) {
                jsonArr.put(number.longValue());
            } else {
                jsonArr.put(number.doubleValue());
            }//from   ww  w  .j  a va  2s. co m

            break;
        case Boolean:
            jsonArr.put(arr.getBoolean(i));
            break;
        case Null:
            jsonArr.put(null);
            break;
        }
    }

    return jsonArr;
}

From source file:com.microsoft.appcenter.reactnative.crashes.AppCenterReactNativeCrashesModule.java

License:Open Source License

@ReactMethod
public void sendErrorAttachments(ReadableArray attachments, String errorId) {
    try {/*from w w w .ja va 2s. c o m*/
        Collection<ErrorAttachmentLog> attachmentLogs = new LinkedList<>();
        for (int i = 0; i < attachments.size(); i++) {
            ReadableMap jsAttachment = attachments.getMap(i);
            String fileName = null;
            if (jsAttachment.hasKey(FILE_NAME_FIELD)) {
                fileName = jsAttachment.getString(FILE_NAME_FIELD);
            }
            if (jsAttachment.hasKey(TEXT_FIELD)) {
                String text = jsAttachment.getString(TEXT_FIELD);
                attachmentLogs.add(ErrorAttachmentLog.attachmentWithText(text, fileName));
            } else {
                String encodedData = jsAttachment.getString(DATA_FIELD);
                byte[] data = Base64.decode(encodedData, Base64.DEFAULT);
                String contentType = jsAttachment.getString(CONTENT_TYPE_FIELD);
                attachmentLogs.add(ErrorAttachmentLog.attachmentWithBinary(data, fileName, contentType));
            }
        }
        WrapperSdkExceptionManager.sendErrorAttachments(errorId, attachmentLogs);
    } catch (Exception e) {
        AppCenterReactNativeCrashesUtils.logError("Failed to get error attachment for report: " + errorId);
        AppCenterReactNativeCrashesUtils.logError(Log.getStackTraceString(e));
    }
}

From source file:com.reactlibrary.SGScanditPicker.java

License:Apache License

@Override
public void receiveCommand(BarcodePicker view, int commandType, @Nullable final ReadableArray args) {

    int argCount = args == null ? 0 : args.size();
    final WritableMap promiseResponse = Arguments.createMap();
    if (argCount > 0) {
        if (args.getType(args.size() - 1) == ReadableType.Map) {
            ReadableMap map = args.getMap(args.size() - 1);
            if (map.hasKey("commandid")) {
                int commandid = map.getInt("commandid");
                promiseResponse.putInt("commandid", commandid);
                argCount--;//from   w w  w .j  a v a2s. c  om
            }
        }
    }

    switch (commandType) {
    case COMMAND_STOP_SCANNING: {
        picker.stopScanning();
        return;
    }
    case COMMAND_START_SCANNING: {
        picker.startScanning(false, new Runnable() {
            @Override
            public void run() {
                new PromiseSender(promiseResponse) {
                    @Override
                    public Object getResponse() {
                        return "Scan started";
                    }
                };
            }
        });
        return;
    }
    case COMMAND_START_SCANNING_IN_PAUSED_STATE: {
        picker.startScanning(true);
        return;
    }
    case COMMAND_PAUSE_SCANNING: {
        picker.pauseScanning();
        return;
    }
    case COMMAND_SET_SETTINGS: {
        if (argCount > 0) {
            ReadableMap map = args.getMap(0);
            setSettings(null, map);
            new PromiseSender(promiseResponse) {
                @Override
                public Object getResponse() {
                    return ScanditBarcodeHelpers.scanSettingsToWritableMap(scanSettings);
                }
            };
        } else {
            final int c = argCount;
            new PromiseSender(promiseResponse) {
                @Override
                public Object getResponse() {
                    promiseFailed = true;
                    return "Cannot set null settings" + c;
                }
            };
        }
        return;
    }
    case COMMAND_GET_SETTINGS: {
        new PromiseSender(promiseResponse) {
            @Override
            public Object getResponse() {
                return ScanditBarcodeHelpers.scanSettingsToWritableMap(scanSettings);
            }
        };
        emitSettings();
        return;
    }

    default:
        throw new IllegalArgumentException(String.format(Locale.ENGLISH,
                "Unsupported command %d received by %s.", commandType, getClass().getSimpleName()));
    }
}

From source file:com.shahenlibrary.VideoPlayer.VideoPlayerViewManager.java

License:Open Source License

@Override
public void receiveCommand(VideoPlayerView root, int commandId, @Nullable ReadableArray args) {
    assert args != null;
    Log.d(VideoPlayerViewManager.REACT_PACKAGE, "receiveCommand: " + args.toString());
    Log.d(VideoPlayerViewManager.REACT_PACKAGE, "receiveCommand: commandId" + String.valueOf(commandId));
    switch (commandId) {
    case COMMAND_GET_INFO:
        root.sendMediaInfo();/*from w w w  .j a v  a  2s .  co m*/
        break;
    case COMMAND_TRIM_MEDIA:
        double startAt = args.getDouble(0);
        double endAt = args.getDouble(1);
        root.trimMedia(startAt, endAt);
        break;
    case COMMAND_GET_PREVIEW_IMAGE:
        float sec = (float) args.getDouble(0);
        Log.d(VideoPlayerViewManager.REACT_PACKAGE, "receiveCommand: Get Preview image for sec: " + sec);
        root.getFrame(sec);
        break;
    case COMMAND_COMPRESS_MEDIA:
        ReadableMap options = args.getMap(0);
        root.compressMedia(this.reactContext, options);
    default:
        Log.d(VideoPlayerViewManager.REACT_PACKAGE, "receiveCommand: Wrong command received");
    }
}