Regarding the fallback, they're used to recover upon failure and return a value. This means that the fallback should return an object compatible with the method's signature. In this case the method returns void but the fallback returns an Optional object. I'd create a custom fallback that returns void on failure.
Also it would be even better to make the fallback just return without failing if the error is a "not found" error and propagate the exception otherwise, but I don't know if given the exception in the fallback (caused by the 500 response) you can determine that. --- Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds-labs/pull/149#issuecomment-78221632
