私は net.jodah.failsafe フレームワークを使用しています。
チュートリアルで見つけたものから、Failsafe は Runnable と Supplier を実行できます。
関数を実行する API はありますか? フェイルセーフで実行したいメソッドは、引数を受け取り、何らかの値を返す必要があるため、必要です。
そうでない場合、回避策はありますか?私の頭に浮かぶ唯一のことは、引数をプライベートフィールドとして保存することです。この場合、メソッドは引数を受け取る必要はありません。次のようにします。
その代わりに:
class MyClass {
public Integer methodThatWillBeCalledWithFailsafe(String str) {
//do something
return retVal;
}
}
これを行う:
class MyClass {
private String str;
public Integer methodThatWillBeCalledWithFailsafe() {
//do something using private field str
return retVal;
}
}
多分もっとエレガントなソリューションがありますか?