package org.zstack.header.vm;
import org.springframework.http.HttpMethod;
import org.zstack.header.configuration.DiskOfferingVO;
import org.zstack.header.configuration.InstanceOfferingVO;
import org.zstack.header.identity.Action;
import org.zstack.header.image.ImageVO;
import org.zstack.header.message.APIParam;
import org.zstack.header.message.APISyncCallMessage;
import org.zstack.header.network.l3.L3NetworkVO;
import org.zstack.header.rest.RestRequest;
import java.util.List;
import static java.util.Arrays.asList;
/**
* Created by xing5 on 2016/8/17.
*/
@Action(category = VmInstanceConstant.ACTION_CATEGORY, names = {"read"})
@RestRequest(
path = "/vm-instances/candidate-destinations",
method = HttpMethod.GET,
responseClass = APIGetCandidateZonesClustersHostsForCreatingVmReply.class,
parameterName = "params"
)
public class APIGetCandidateZonesClustersHostsForCreatingVmMsg extends APISyncCallMessage {
@APIParam(resourceType = InstanceOfferingVO.class, checkAccount = true)
private String instanceOfferingUuid;
@APIParam(resourceType = ImageVO.class, checkAccount = true)
private String imageUuid;
@APIParam(resourceType = L3NetworkVO.class, nonempty = true, checkAccount = true)
private List<String> l3NetworkUuids;
@APIParam(required = false, resourceType = DiskOfferingVO.class, checkAccount = true)
private String rootDiskOfferingUuid;
@APIParam(required = false, nonempty = true, resourceType = DiskOfferingVO.class, checkAccount = true)
private List<String> dataDiskOfferingUuids;
private String zoneUuid;
private String clusterUuid;
private String defaultL3NetworkUuid;
public String getDefaultL3NetworkUuid() {
return defaultL3NetworkUuid;
}
public void setDefaultL3NetworkUuid(String defaultL3NetworkUuid) {
this.defaultL3NetworkUuid = defaultL3NetworkUuid;
}
public String getZoneUuid() {
return zoneUuid;
}
public void setZoneUuid(String zoneUuid) {
this.zoneUuid = zoneUuid;
}
public String getClusterUuid() {
return clusterUuid;
}
public void setClusterUuid(String clusterUuid) {
this.clusterUuid = clusterUuid;
}
public String getInstanceOfferingUuid() {
return instanceOfferingUuid;
}
public void setInstanceOfferingUuid(String instanceOfferingUuid) {
this.instanceOfferingUuid = instanceOfferingUuid;
}
public String getImageUuid() {
return imageUuid;
}
public void setImageUuid(String imageUuid) {
this.imageUuid = imageUuid;
}
public List<String> getL3NetworkUuids() {
return l3NetworkUuids;
}
public void setL3NetworkUuids(List<String> l3NetworkUuids) {
this.l3NetworkUuids = l3NetworkUuids;
}
public String getRootDiskOfferingUuid() {
return rootDiskOfferingUuid;
}
public void setRootDiskOfferingUuid(String rootDiskOfferingUuid) {
this.rootDiskOfferingUuid = rootDiskOfferingUuid;
}
public List<String> getDataDiskOfferingUuids() {
return dataDiskOfferingUuids;
}
public void setDataDiskOfferingUuids(List<String> dataDiskOfferingUuids) {
this.dataDiskOfferingUuids = dataDiskOfferingUuids;
}
public static APIGetCandidateZonesClustersHostsForCreatingVmMsg __example__() {
APIGetCandidateZonesClustersHostsForCreatingVmMsg msg = new APIGetCandidateZonesClustersHostsForCreatingVmMsg();
msg.setClusterUuid(uuid());
msg.setDataDiskOfferingUuids(asList(uuid(), uuid()));
msg.setImageUuid(uuid());
msg.setInstanceOfferingUuid(uuid());
msg.setL3NetworkUuids(asList(uuid()));
return msg;
}
}