Friday, 21 September 2018

how to convert asynchronous promise code to rxjava

I have the following synchronous code that I would like to model as async code in RXJava.

void executeActions(List<Action> action) {
  if (action == null || action.size() == 0) return;
  for (Action action: actions) { 
     executeActions(action.handle());
  } 
}


class Action {

   //implementation of handle 
   // return List<Action> or null. 
   List<Action> handle() {
   } 
} 

Now in JS I can model this interaction with Promises like so. (Pseudo code below - my JS is weak)

executeActionsAsync(actions) { 
  var p = Promise.resolve(); 
  action.forEach(function(action) { 
    p = p.then(function() { 
           action.handle();    
        })
  } 
  return p; 
} 


class Action() { 
  function handle() { 
    actions = [];// some array of actions. 
    executeAsync(actions);
  } 
} 

I would like to model the same in RXJava2. Any help is appreciated.



from how to convert asynchronous promise code to rxjava

No comments:

Post a Comment