code: public Observable<CertificateWithNonceDescriptionInner> generateVerificationCodeAsync(String resourceGroupName, String resourceName, String certificateName, String ifMatch) {
          return generateVerificationCodeWithServiceResponseAsync(resourceGroupName, resourceName, certificateName, ifMatch).map(new Func1<ServiceResponse<CertificateWithNonceDescriptionInner>, CertificateWithNonceDescriptionInner>() {
              @Override
              public CertificateWithNonceDescriptionInner call(ServiceResponse<CertificateWithNonceDescriptionInner> response) {
                  return response.body();
              }
          });
      }
docs: Generate verification code for proof of possession flow.
  Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.
  
  @param resourceGroupName The name of the resource group that contains the IoT hub.
  @param resourceName The name of the IoT hub.
  @param certificateName The name of the certificate
  @param ifMatch ETag of the Certificate.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the CertificateWithNonceDescriptionInner object