code: public Observable<ServiceResponseWithHeaders<Page<Certificate>, CertificateListHeaders>> listWithServiceResponseAsync(final CertificateListOptions certificateListOptions) {
          return listSinglePageAsync(certificateListOptions)
              .concatMap(new Func1<ServiceResponseWithHeaders<Page<Certificate>, CertificateListHeaders>, Observable<ServiceResponseWithHeaders<Page<Certificate>, CertificateListHeaders>>>() {
                  @Override
                  public Observable<ServiceResponseWithHeaders<Page<Certificate>, CertificateListHeaders>> call(ServiceResponseWithHeaders<Page<Certificate>, CertificateListHeaders> page) {
                      String nextPageLink = page.body().nextPageLink();
                      if (nextPageLink == null) {
                          return Observable.just(page);
                      }
                      CertificateListNextOptions certificateListNextOptions = null;
                      if (certificateListOptions != null) {
                          certificateListNextOptions = new CertificateListNextOptions();
                          certificateListNextOptions.withClientRequestId(certificateListOptions.clientRequestId());
                          certificateListNextOptions.withReturnClientRequestId(certificateListOptions.returnClientRequestId());
                          certificateListNextOptions.withOcpDate(certificateListOptions.ocpDate());
                      }
                      return Observable.just(page).concatWith(listNextWithServiceResponseAsync(nextPageLink, certificateListNextOptions));
                  }
              });
      }
docs: Lists all of the certificates that have been added to the specified account.
  
  @param certificateListOptions Additional parameters for the operation
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the PagedList&lt;Certificate&gt; object