code: public void updateJob(String jobId, PoolInformation poolInfo, Integer priority, JobConstraints constraints, OnAllTasksComplete onAllTasksComplete,
                            List<MetadataItem> metadata, Iterable<BatchClientBehavior> additionalBehaviors) throws BatchErrorException, IOException {
          JobUpdateOptions options = new JobUpdateOptions();
          BehaviorManager bhMgr = new BehaviorManager(this.customBehaviors(), additionalBehaviors);
          bhMgr.applyRequestBehaviors(options);
  
          JobUpdateParameter param = new JobUpdateParameter()
                  .withPriority(priority)
                  .withPoolInfo(poolInfo)
                  .withConstraints(constraints)
                  .withOnAllTasksComplete(onAllTasksComplete)
                  .withMetadata(metadata);
  
          this.parentBatchClient.protocolLayer().jobs().update(jobId, param, options);
      }
docs: Updates the specified job.
  This method performs a full replace of all updatable properties of the job. For example, if the constraints parameter is null, then the Batch service removes the job's existing constraints and replaces them with the default constraints.
  
  @param jobId The ID of the job.
  @param poolInfo The pool on which the Batch service runs the job's tasks. You may change the pool for a job only when the job is disabled. If you specify an autoPoolSpecification specification in the poolInfo, only the keepAlive property can be updated, and then only if the auto pool has a poolLifetimeOption of job.
  @param priority The priority of the job. Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. If null, it is set to the default value 0.
  @param constraints The execution constraints for the job. If null, the constraints are cleared.
  @param onAllTasksComplete Specifies an action the Batch service should take when all tasks in the job are in the completed state.
  @param metadata A list of name-value pairs associated with the job as metadata. If null, it takes the default value of an empty list; in effect, any existing metadata is deleted.
  @param additionalBehaviors A collection of {@link BatchClientBehavior} instances that are applied to the Batch service request.
  @throws BatchErrorException Exception thrown when an error response is received from the Batch service.
  @throws IOException Exception thrown when there is an error in serialization/deserialization of data sent to/received from the Batch service.