Docs Menu
Docs Home
/ /
Atlas Device SDKs
/ /

Call a Function - Java SDK

On this page

  • Call a Function by Name

The examples in this section demonstrate calling a simple function named sum that takes two arguments, adds them, and returns the result:

// sum: adds two numbers
exports = function(a, b) {
return a + b;
};

To execute a function from the SDK, use the getFunctions() method of the your App to retrieve a Functions manager. Pass the name and parameters of the function you would like to call to callFunction() or callFunctionAsync():

String appID = YOUR_APP_ID; // replace this with your App ID
App app = new App(new AppConfiguration.Builder(appID).build());
Credentials credentials = Credentials.anonymous();
app.loginAsync(credentials, it -> {
if (it.isSuccess()) {
User user = app.currentUser();
assert user != null;
Functions functionsManager = app.getFunctions(user);
List<Integer> args = Arrays.asList(1, 2);
functionsManager.callFunctionAsync("sum", args, Integer.class, result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Sum value: " + result.get());
} else {
Log.e("EXAMPLE", "failed to call sum function with: " + result.getError());
}
});
} else {
Log.e("EXAMPLE", "Error logging into the Realm app. Make sure that anonymous authentication is enabled. Error: " + it.getError());
}
});
val appID = YOUR_APP_ID // replace this with your App ID
val app: App = App(AppConfiguration.Builder(appID).build())
val anonymousCredentials: Credentials = Credentials.anonymous()
app.loginAsync(anonymousCredentials) {
if (it.isSuccess) {
val user: User? = app.currentUser()
val functionsManager: Functions = app.getFunctions(user)
val args: List<Int> = listOf(1, 2)
functionsManager.callFunctionAsync("sum", args, Integer::class.java) { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Sum value: ${result.get()}")
} else {
Log.e("EXAMPLE", "failed to call sum function with: " + result.error)
}
}
} else {
Log.e("EXAMPLE", "Error logging into the Realm app. Make sure that anonymous authentication is enabled. Error: " + it.error)
}
}

Back

Connect to an App Services App