Open serjooo opened 7 years ago
I found a work around to this. What you can do is in your repository implement a method and make it accept an ObjectCallback and then when calling save you would actually create a new VoidCallback and implement its methods and then you would be able to call your ObjectCallback appropriately according to the VoidCallback and return the object. Here is an example to clarify what has been added:
public void createObject(String firstName, String lastName final ObjectCallback objectCallback) {
HashMap<String, Object> params = new HashMap<>();
params.put("firstName", firstName);
params.put("lastName", lastName);
final Object theObject = repository.createObject(params);
theObject .setFirstName(employeeId);
theObject .setLastName(valetTeamId);
theObject.save(new VoidCallback() {
@Override
public void onSuccess() {
objectCallback.onSuccess(theObject);
}
@Override
public void onError(Throwable t) {
objectCallback.onError(t);
}
});
}
The way currently the save in Model is implemented is:
Sometimes after saving something to the database you care about getting the JsonResponseObject, like maybe getting the ID for the object saved from the ResponseObject. So I was thinking that we have another save method in the Model class that actually returns a JSONResponseObject like this