code: private Observable<Response<ResponseBody>> pollAsync(String url, String loggingContext) {
          URL endpoint;
          try {
              endpoint = new URL(url);
          } catch (MalformedURLException e) {
              return Observable.error(e);
          }
          AsyncService service = restClient().retrofit().create(AsyncService.class);
          if (loggingContext != null && !loggingContext.endsWith(" (poll)")) {
              loggingContext += " (poll)";
          }
          return service.get(endpoint.getFile(), serviceClientUserAgent, loggingContext)
                  .flatMap(new Func1<Response<ResponseBody>, Observable<Response<ResponseBody>>>() {
                      @Override
                      public Observable<Response<ResponseBody>> call(Response<ResponseBody> response) {
                          RuntimeException exception = createExceptionFromResponse(response, 200, 201, 202, 204);
                          if (exception != null) {
                              return Observable.error(exception);
                          } else {
                              return Observable.just(response);
                          }
                      }
                  });
      }
docs: Polls from the URL provided.
  
  @param url the URL to poll from.
  @return the raw response.