Как получить результат с условием переключения на стадии множественного завершения - PullRequest
0 голосов
/ 30 марта 2019

Я хочу вызвать другой CompletionStage для случая коммутатора, у меня есть еще несколько условий, которые будут добавляться как случай, и я хочу получить результат этого конкретного случая.

Ниже приведен код.

public CompletionStage<HashMap<String,Object>> verifyDetails(Argument1, Argumnet2) {

        CompletionStage<JsonNode> js = new CompletableFuture<>();

    if(true) {

        switch(Expression) {
            case "1":
             js.thenCompose(cs1 -> {return GetCase1Details()});
            break;
            case "2":
             js.thenCompose(cs1 -> {return getCase2Details()});
            break;

            }
        }

   return js.thenApply(fn ->{
      System.out.println(fn);
   })
}

private CompletionStage<HashMap<String, Object>> GetCase1Details(){
   HashMap<String, Object> map = new HashMap<String, Object>();
   //Some stuff
   return map;
}

private CompletionStage<HashMap<String, Object>> GetCase2Details(){
   HashMap<String, Object> map = new HashMap<String, Object>();
   //Some stuff
   return map;
}


...