如何编写可观察返回的文档,该文档在RxJava中抛出异常

时间:2017-03-16 20:29:44

标签: java styles rx-java javadoc

不确定如何在Java doc样式中记录throws声明。下面的例子:

/**
 * Get Facebook Friends
 *
 * @param facebookToken - Facebook Token
 * @return list of {@link User}
 * @throws SomeCheckedException <- this is normally the way, but not for Observable return type
 */

public Observable<List<User>> getFriends(String facebookToken) {
    return get("/me/friends", facebookToken)
        .flatMap(response -> {
            FacebookResponse facebookResponse = response.readEntity(FacebookResponse.class);

            if (null != facebookResponse.getError()) {
                return Observable.error(parseException(facebookResponse.getError()));
            } else if (null == facebookResponse.getData()) {
                return Observable.error(new FacebookException("Empty data"));
            }

            return Observable.just(facebookResponse.getData());
        });
    }

该方法应该返回Observable.error(),我希望开发人员可以调用此方法,了解可能在onErrorNextResume等处理的异常。

Docs不包含任何类似内容。

1 个答案:

答案 0 :(得分:0)

您是对的,该方法不会引发任何错误,但是它可能会返回Observable并发出错误。在我目前工作的公司中,我们高度使用反应式编程,在这些情况下,我们删除@throw行并将此信息添加到@return

@return an {@link Observable} containing the retrieved {@link User}s; yields a {@link FacebookException} in case of empty data.