Example usage for com.facebook.react.bridge Callback invoke

List of usage examples for com.facebook.react.bridge Callback invoke

Introduction

In this page you can find the example usage for com.facebook.react.bridge Callback invoke.

Prototype

public void invoke(Object... args);

Source Link

Document

Schedule javascript function execution represented by this Callback instance

Usage

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void getCurrentPosition(ReadableMap options, final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        public void success(Object location) {
            try {
                success.invoke(jsonToMap((JSONObject) location));
            } catch (JSONException e) {
                failure.invoke(e.getMessage());
            }// ww  w. ja  v a 2  s.co m
        }

        public void error(Object error) {
            failure.invoke(error);
        }
    };
    getAdapter().getCurrentPosition(mapToJson(options), callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void watchPosition(ReadableMap options, final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        public void success(Object location) {
            try {
                sendEvent(EVENT_WATCHPOSITION, jsonToMap((JSONObject) location));
            } catch (JSONException e) {
                e.printStackTrace();/*from   w  w  w .  ja va  2  s . co  m*/
            }
        }

        public void error(Object error) {
            failure.invoke(error);
        }
    };
    getAdapter().watchPosition(mapToJson(options), callback);
    success.invoke();
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void getOdometer(Callback success, Callback failure) {
    success.invoke(getAdapter().getOdometer());
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void setOdometer(Float value, final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        public void success(Object location) {
            try {
                success.invoke(jsonToMap((JSONObject) location));
            } catch (JSONException e) {
                failure.invoke(e.getMessage());
            }/*from   ww  w.  j  a v  a 2s  . co m*/
        }

        public void error(Object errorCode) {
            failure.invoke((Integer) errorCode);
        }
    };
    getAdapter().setOdometer(value, callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void addGeofence(ReadableMap options, final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        @Override// w w  w .j  a  v a  2s . co  m
        public void success(Object o) {
            success.invoke((String) o);
        }

        @Override
        public void error(Object o) {
            failure.invoke((String) o);
        }
    };
    getAdapter().addGeofence(mapToJson(options), callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void addGeofences(ReadableArray geofences, final Callback success, final Callback failure) {
    JSONArray json = new JSONArray();
    for (int n = 0; n < geofences.size(); n++) {
        json.put(mapToJson(geofences.getMap(n)));
    }/*w w w.ja v a 2 s  .c  om*/
    TSCallback callback = new TSCallback() {
        @Override
        public void success(Object o) {
            success.invoke((Boolean) o);
        }

        @Override
        public void error(Object o) {
            failure.invoke((String) o);
        }
    };
    getAdapter().addGeofences(json, callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void removeGeofence(String identifier, final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        @Override//from w ww.  ja  v a 2  s.  c  o m
        public void success(Object identifier) {
            success.invoke((String) identifier);
        }

        @Override
        public void error(Object o) {
            failure.invoke((String) o);
        }
    };
    getAdapter().removeGeofence(identifier, callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void removeGeofences(final Callback success, final Callback failure) {
    // TODO allow JS api to delete a list-of-geofences.
    TSCallback callback = new TSCallback() {
        @Override//ww w.ja v a  2  s  .  c om
        public void success(Object o) {
            success.invoke((Boolean) o);
        }

        @Override
        public void error(Object o) {
            failure.invoke((String) o);
        }
    };
    try {
        // TODO accept WritableArray geofences from Client js API, allowing to remove a set of geofences
        WritableArray geofences = new WritableNativeArray();
        getAdapter().removeGeofences(arrayToJson(geofences), callback);
    } catch (JSONException e) {
        e.printStackTrace();
    }

}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

@ReactMethod
public void getGeofences(final Callback success, final Callback failure) {
    TSCallback callback = new TSCallback() {
        @Override//w ww. j av a 2 s  .co  m
        public void success(Object geofences) {
            try {
                success.invoke(convertJsonToArray((JSONArray) geofences));
            } catch (JSONException e) {
                e.printStackTrace();
                failure.invoke(e.getMessage());
            }
        }

        @Override
        public void error(Object error) {

        }
    };
    getAdapter().getGeofences(callback);
}

From source file:com.transistorsoft.rnbackgroundgeolocation.RNBackgroundGeolocationModule.java

/**
* Android doesn't support (or require) background-tasks.  This method is here for compatibility with iOS API
*//*from  w  ww . j a v a 2s  .c o m*/
@ReactMethod
public void beginBackgroundTask(Callback success) {
    Integer taskId = 0;
    success.invoke(taskId);
}