/**
  * Lists all top level domains supported for registration.
  *
  * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  * @return the {@link ServiceCall} object
  */
 public ServiceCall<List<TopLevelDomainInner>> getGetTopLevelDomainsAsync(
     final ListOperationCallback<TopLevelDomainInner> serviceCallback) {
   return AzureServiceCall.create(
       getGetTopLevelDomainsSinglePageAsync(),
       new Func1<String, Observable<ServiceResponse<Page<TopLevelDomainInner>>>>() {
         @Override
         public Observable<ServiceResponse<Page<TopLevelDomainInner>>> call(String nextPageLink) {
           return getGetTopLevelDomainsNextSinglePageAsync(nextPageLink);
         }
       },
       serviceCallback);
 }
 /**
  * Lists all domains in a subscription.
  *
  * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  * @return the {@link ServiceCall} object
  */
 public ServiceCall<List<CertificateOrderInner>> getAllCertificateOrdersAsync(
     final ListOperationCallback<CertificateOrderInner> serviceCallback) {
   return AzureServiceCall.create(
       getAllCertificateOrdersSinglePageAsync(),
       new Func1<String, Observable<ServiceResponse<Page<CertificateOrderInner>>>>() {
         @Override
         public Observable<ServiceResponse<Page<CertificateOrderInner>>> call(
             String nextPageLink) {
           return getAllCertificateOrdersNextSinglePageAsync(nextPageLink);
         }
       },
       serviceCallback);
 }
 /**
  * Lists legal agreements that user needs to accept before purchasing domain.
  *
  * @param name Name of the top level domain
  * @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  * @return the {@link ServiceCall} object
  */
 public ServiceCall<List<TldLegalAgreementInner>> listTopLevelDomainAgreementsAsync(
     final String name, final ListOperationCallback<TldLegalAgreementInner> serviceCallback) {
   return AzureServiceCall.create(
       listTopLevelDomainAgreementsSinglePageAsync(name),
       new Func1<String, Observable<ServiceResponse<Page<TldLegalAgreementInner>>>>() {
         @Override
         public Observable<ServiceResponse<Page<TldLegalAgreementInner>>> call(
             String nextPageLink) {
           return listTopLevelDomainAgreementsNextSinglePageAsync(nextPageLink);
         }
       },
       serviceCallback);
 }