【发布时间】:2019-08-05 03:23:07
【问题描述】:
我不熟悉使用 vavr 进行函数式编程。
我有一个方法在执行成功时返回数据,如果执行失败,则返回 MyCustomRunTimeException。
在我的服务类中,我正在调用这个 API 方法,当 API 方法失败时,我必须捕获异常并清除我的应用程序缓存并将相同的异常返回给调用者(在我的情况下是另一个服务方法)。
如果方法调用成功,我必须返回实际对象,而不是 Try 包装的对象。
如何使用 vavr Try 来实现这一点?
我尝试在 vavr Try.recover 中使用不同的方法,但我无法抛出相同的异常。
如果有人可以提供,任何示例或 sn-p 都可能对我很有帮助。
提前致谢。
例子:
Foo doFoo() {
throw new MyCustomRunTimeException();
}
method1(){
try{
doFoo();
}catch(MyCustomRunTimeException ex){
clearcache();
throw ex;
}
}
【问题讨论】:
-
您能否提供一些示例代码来说明您的问题?
-
添加示例