package org.zstack.header.network.l3; import org.springframework.http.HttpMethod; import org.zstack.header.identity.Action; import org.zstack.header.message.APIParam; import org.zstack.header.message.APISyncCallMessage; import org.zstack.header.rest.RestRequest; import org.zstack.header.rest.SDK; /** * Created by frank on 6/15/2015. */ @Action(category = L3NetworkConstant.ACTION_CATEGORY, names = {"read"}) @RestRequest( path = "null", optionalPaths = { "/l3-networks/{l3NetworkUuid}/ip/free", "/l3-networks/ip-ranges/{ipRangeUuid}/ip/free", }, parameterName = "params", responseClass = APIGetFreeIpReply.class, method = HttpMethod.GET ) @SDK( actionsMapping = { "GetFreeIpOfL3Network=/l3-networks/{l3NetworkUuid}/ip/free", "GetFreeIpOfIpRange=/l3-networks/ip-ranges/{ipRangeUuid}/ip/free" } ) public class APIGetFreeIpMsg extends APISyncCallMessage implements L3NetworkMessage { @APIParam(resourceType = L3NetworkVO.class, required = false, checkAccount = true) private String l3NetworkUuid; @APIParam(resourceType = IpRangeVO.class, required = false, checkAccount = true) private String ipRangeUuid; @APIParam(required = false) private String start = "0.0.0.0"; private int limit = 100; public String getL3NetworkUuid() { return l3NetworkUuid; } public void setL3NetworkUuid(String l3NetworkUuid) { this.l3NetworkUuid = l3NetworkUuid; } public String getIpRangeUuid() { return ipRangeUuid; } public void setIpRangeUuid(String ipRangeUuid) { this.ipRangeUuid = ipRangeUuid; } public void setStartIp(String start) { this.start = start; } public String getStart() { return start; } public int getLimit() { return limit; } public void setLimit(int limit) { this.limit = limit; } public static APIGetFreeIpMsg __example__() { APIGetFreeIpMsg msg = new APIGetFreeIpMsg(); msg.setL3NetworkUuid(uuid()); msg.ipRangeUuid = uuid(); return msg; } }