public Promise<T> recover(Function<Throwable, ? extends T> handleThrowable) { return delegate.recover(handleThrowable); }
@Override public Promise<A> recover(Function<Throwable, ? extends A> handleThrowable) { return delegate().recover(handleThrowable); }
@Override public void deleteTemporaryAttachment(final TemporaryAttachmentId temporaryAttachmentId) { streamAttachmentStore.deleteTemporaryAttachment(temporaryAttachmentId).recover(new Function<Throwable, Unit>() { @Override public Unit apply(final Throwable t) { log.info("Unable to delete temporary attachment with id " + temporaryAttachmentId, t); return Unit.VALUE; } }).claim(); }
@Override public Promise<Result<Void>> message(String roomIdOrName, String from, String message, Option<Message.Format> format, Option<Message.BackgroundColor> color, Option<Boolean> notify) { final Form params = messageParametersAsMap(roomIdOrName, from, message, format, color, notify); return toPostAsyncFormResource(client, params) .apply(buildUrl("rooms/message")) .map(responseMapper.toVoid()) .recover(ResourceMapper.<Void>handleError()); }
public Promise<Result<Void>> canAuthenticate(Option<String> token) { if (token.isEmpty()) { return Promises.promise(Result.<Void>error("Token does not exist")); } return ResourceMapper.toGetAsyncJsonResource(client) .apply(URI.create(configurationManager.getApiBaseUrl() + "v1/?auth_token=" + token.get())) .map(responseMapper.toVoid()) .recover(ResourceMapper.<Void>handleError()); }
@Override public Promise<Result<List<Room>>> list() { return toGetAsyncJsonResource(client) .apply(buildUrl("rooms/list")) .map(responseMapper.to(RoomsResponse.class)) .recover(ResourceMapper.<RoomsResponse>handleError()) .map(new Function<Result<RoomsResponse>, Result<List<Room>>>() { @Override public Result<List<Room>> apply(Result<RoomsResponse> result) { if (result.isSuccess()) { return Result.success(result.success().rooms); } else { return result.asError(); } } }); }
}).recover(new com.google.common.base.Function<Throwable, Boolean>()