com.microsoft.azure.batch.protocol.models.NodeRemoveParameter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-batch Show documentation
Show all versions of azure-batch Show documentation
This package contains the root module of Microsoft Azure Batch SDK.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
package com.microsoft.azure.batch.protocol.models;
import java.util.List;
import org.joda.time.Period;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Options for removing Compute Nodes from a Pool.
*/
public class NodeRemoveParameter {
/**
* A list containing the IDs of the Compute Nodes to be removed from the
* specified Pool.
* A maximum of 100 nodes may be removed per request.
*/
@JsonProperty(value = "nodeList", required = true)
private List nodeList;
/**
* The timeout for removal of Compute Nodes to the Pool.
* The default value is 15 minutes. The minimum value is 5 minutes. If you
* specify a value less than 5 minutes, the Batch service returns an error;
* if you are calling the REST API directly, the HTTP status code is 400
* (Bad Request).
*/
@JsonProperty(value = "resizeTimeout")
private Period resizeTimeout;
/**
* Determines what to do with a Compute Node and its running task(s) after
* it has been selected for deallocation.
* The default value is requeue. Possible values include: 'requeue',
* 'terminate', 'taskCompletion', 'retainedData'.
*/
@JsonProperty(value = "nodeDeallocationOption")
private ComputeNodeDeallocationOption nodeDeallocationOption;
/**
* Get a maximum of 100 nodes may be removed per request.
*
* @return the nodeList value
*/
public List nodeList() {
return this.nodeList;
}
/**
* Set a maximum of 100 nodes may be removed per request.
*
* @param nodeList the nodeList value to set
* @return the NodeRemoveParameter object itself.
*/
public NodeRemoveParameter withNodeList(List nodeList) {
this.nodeList = nodeList;
return this;
}
/**
* Get the default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
*
* @return the resizeTimeout value
*/
public Period resizeTimeout() {
return this.resizeTimeout;
}
/**
* Set the default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
*
* @param resizeTimeout the resizeTimeout value to set
* @return the NodeRemoveParameter object itself.
*/
public NodeRemoveParameter withResizeTimeout(Period resizeTimeout) {
this.resizeTimeout = resizeTimeout;
return this;
}
/**
* Get the default value is requeue. Possible values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData'.
*
* @return the nodeDeallocationOption value
*/
public ComputeNodeDeallocationOption nodeDeallocationOption() {
return this.nodeDeallocationOption;
}
/**
* Set the default value is requeue. Possible values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData'.
*
* @param nodeDeallocationOption the nodeDeallocationOption value to set
* @return the NodeRemoveParameter object itself.
*/
public NodeRemoveParameter withNodeDeallocationOption(ComputeNodeDeallocationOption nodeDeallocationOption) {
this.nodeDeallocationOption = nodeDeallocationOption;
return this;
}
}