code: public ContainerDatasetAction withVariables(Variable... variables) {
          if (this.variables == null) {
              setVariables(new java.util.ArrayList<Variable>(variables.length));
          }
          for (Variable ele : variables) {
              this.variables.add(ele);
          }
          return this;
      }
docs: <p>
  The values of variables used within the context of the execution of the containerized application (basically,
  parameters passed to the application). Each variable must have a name and a value given by one of "stringValue",
  "datasetContentVersionValue", or "outputFileUriValue".
  </p>
  <p>
  <b>NOTE:</b> This method appends the values to the existing list (if any). Use
  {@link #setVariables(java.util.Collection)} or {@link #withVariables(java.util.Collection)} if you want to
  override the existing values.
  </p>
  
  @param variables
  The values of variables used within the context of the execution of the containerized application
  (basically, parameters passed to the application). Each variable must have a name and a value given by one
  of "stringValue", "datasetContentVersionValue", or "outputFileUriValue".
  @return Returns a reference to this object so that method calls can be chained together.