code: public Observable<ServiceResponseWithHeaders<String, RunbookDraftReplaceContentHeaders>> replaceContentWithServiceResponseAsync(String resourceGroupName, String automationAccountName, String runbookName, String runbookContent) {
          if (this.client.subscriptionId() == null) {
              throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
          }
          if (resourceGroupName == null) {
              throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
          }
          if (automationAccountName == null) {
              throw new IllegalArgumentException("Parameter automationAccountName is required and cannot be null.");
          }
          if (runbookName == null) {
              throw new IllegalArgumentException("Parameter runbookName is required and cannot be null.");
          }
          if (runbookContent == null) {
              throw new IllegalArgumentException("Parameter runbookContent is required and cannot be null.");
          }
          final String apiVersion = "2015-10-31";
          Observable<Response<ResponseBody>> observable = service.replaceContent(this.client.subscriptionId(), resourceGroupName, automationAccountName, runbookName, runbookContent, apiVersion, this.client.acceptLanguage(), this.client.userAgent());
          return client.getAzureClient().getPutOrPatchResultWithHeadersAsync(observable, new TypeToken<String>() { }.getType(), RunbookDraftReplaceContentHeaders.class);
      }
docs: Replaces the runbook draft content.
  
  @param resourceGroupName Name of an Azure Resource group.
  @param automationAccountName The name of the automation account.
  @param runbookName The runbook name.
  @param runbookContent The runbook draft content.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable for the request