package org.zstack.header.vm; import org.zstack.header.message.APIReply; import org.zstack.header.network.l3.IpRangeInventory; import org.zstack.header.network.l3.L3NetworkConstant; import org.zstack.header.network.l3.L3NetworkInventory; import org.zstack.header.network.l3.L3NetworkState; import org.zstack.header.network.service.NetworkServiceL3NetworkRefInventory; import org.zstack.header.network.service.NetworkServiceType; import org.zstack.header.rest.RestResponse; import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; import static org.codehaus.groovy.runtime.InvokerHelper.asList; /** * Created by xing5 on 2016/8/23. */ @RestResponse(allTo = "inventories") public class APIGetInterdependentL3NetworkImageReply extends APIReply { private List inventories; public List getInventories() { return inventories; } public void setInventories(List inventories) { this.inventories = inventories; } public static APIGetInterdependentL3NetworkImageReply __example__() { APIGetInterdependentL3NetworkImageReply reply = new APIGetInterdependentL3NetworkImageReply(); L3NetworkInventory l3 = new L3NetworkInventory(); l3.setName("private L3"); Timestamp time = new Timestamp(System.currentTimeMillis()); String l3Uuid = uuid(); l3.setUuid(l3Uuid); l3.setType(L3NetworkConstant.L3_BASIC_NETWORK_TYPE); l3.setState(L3NetworkState.Enabled.toString()); l3.setL2NetworkUuid(uuid()); l3.setZoneUuid(uuid()); l3.setCreateDate(time); l3.setLastOpDate(time); IpRangeInventory ipr = new IpRangeInventory(); ipr.setName("ip range"); ipr.setUuid(uuid()); ipr.setL3NetworkUuid(l3Uuid); ipr.setStartIp("192.168.0.10"); ipr.setEndIp("192.168.0.100"); ipr.setNetmask("255.255.255.0"); ipr.setGateway("192.168.0.1"); ipr.setCreateDate(time); ipr.setLastOpDate(time); l3.setIpRanges(asList(ipr)); List<NetworkServiceL3NetworkRefInventory> refs = new ArrayList<>(); String puuid = uuid(); NetworkServiceL3NetworkRefInventory ref = new NetworkServiceL3NetworkRefInventory(); ref.setL3NetworkUuid(l3Uuid); ref.setNetworkServiceProviderUuid(puuid); ref.setNetworkServiceType(NetworkServiceType.DHCP.toString()); refs.add(ref); ref = new NetworkServiceL3NetworkRefInventory(); ref.setL3NetworkUuid(l3Uuid); ref.setNetworkServiceProviderUuid(puuid); ref.setNetworkServiceType(NetworkServiceType.DNS.toString()); refs.add(ref); ref = new NetworkServiceL3NetworkRefInventory(); ref.setL3NetworkUuid(l3Uuid); ref.setNetworkServiceProviderUuid(puuid); ref.setNetworkServiceType(NetworkServiceType.SNAT.toString()); refs.add(ref); l3.setNetworkServices(refs); reply.inventories = asList(l3); return reply; } }