code: public Observable<KeyBundle> recoverDeletedKeyAsync(String vaultBaseUrl, String keyName) {
          return recoverDeletedKeyWithServiceResponseAsync(vaultBaseUrl, keyName).map(new Func1<ServiceResponse<KeyBundle>, KeyBundle>() {
              @Override
              public KeyBundle call(ServiceResponse<KeyBundle> response) {
                  return response.body();
              }
          });
      }
docs: Recovers the deleted key to its latest version.
  The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.
  
  @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.
  @param keyName The name of the deleted key.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the KeyBundle object