簡體   English   中英

使用AWS Workflows:等待諾言完成后再執行功能。

[英]Working with AWS Workflows: Waiting for a promise to finish before executing a function.

我試圖熟悉AWS工作流和承諾。 我有一個清單:

List<Promise<ClassA>> classA= someSet.stream()
                  .filter()
                  .map(/*Insert call activity*/)
                  .collect(Collectors.toList());

Promise<Void> waitForPromises = new AndPromise(
              doSomething(classA),
              .
              .Some other functions);

facts = /*do Some processing*/
Promise<ClassB<EnumA>> actions = ActivityB.evaluate(facts, waitForPromises);
performActions(actions, facts, classA);

評估功能:

evaluate(Facts facts, Promise<?>... waitFor) 

現在,如果我不修改classA中的值,則可以使performActions的定義如下: performActions(Promise<ClassB<EnumA>> actions, Facts facts, @Wait List<Promise<ClassA>> classA) ;

但是,現在我需要確保在執行performActions之前,由於doSomething執行的操作, classA具有更新的值。

這行得通嗎?

List<Promise<ClassA>> classA= someSet.stream()
              .filter()
              .map(/*Insert call activity*/)
              .collect(Collectors.toList());

Promise<List<ClassA>> somethingP = doSomething(classA)
Promise<Void> waitForPromises = new AndPromise(
          somethingP,
          .
          .Some other functions);

facts = /*do Some processing*/
Promise<ClassB<EnumA>> actions = ActivityB.evaluate(facts, waitForPromises);

performActions(actions, facts, somethingP);

perfomActions的簽名是:

performActions(Promise<ClassB<EnumA>> actions, Facts facts,
              Promise<List<ClassA>> somethingP);

編輯:更新了doSomething以返回Promise <List <ClassA >>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM