Один из способов - определить интерфейс:
public interface GetValueCallback() {
onSuccess(SomeStructureList result);
}
Затем установить параметр обратного вызова для этого метода getValue, реализующего этот интерфейс:
public String getValue(SomeEntry object, GetValueCallback callback) {
Rest.getSomething(AppController.getRest(), object.getId(), idAccess, null, null, new AsyncCallback<SomeStructureList>() {
@Override
public void onSuccess(final SomeStructureList result) {
callback.onSuccess(result);
}
@Override
public void onFailure(Throwable caught) {
// fail...
}
});
return getRes(); //TODO as well
}
Наконец, выполните вызов, передав обратного вызова, и вы получите результат в виде параметра:
getValue(object, new Callback() {
@Override
public void onSuccess(SomeStructureList result) {
// You can do whatever you need with the result here
}
});
Если вас интересуют другие способы, вы также можете взглянуть на Rx Java.