package org.zstack.header.network.service; import org.zstack.header.network.l3.L3NetworkInventory; import org.zstack.header.query.ExpandedQueries; import org.zstack.header.query.ExpandedQuery; import org.zstack.header.search.Inventory; import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.List; /** * @inventory inventory for network service information of l3Network * @category l3network * @example { * "l3NetworkUuid": "f73926eb4f234f8195c61c33d8db419d", * "networkServiceProviderUuid": "bbb525dc4cc8451295d379797e092dba", * "networkServiceType": "PortForwarding" * } * @since 0.1.0 */ @Inventory(mappingVOClass = NetworkServiceL3NetworkRefVO.class) @ExpandedQueries({ @ExpandedQuery(expandedField = "l3Network", inventoryClass = L3NetworkInventory.class, foreignKey = "l3NetworkUuid", expandedInventoryKey = "uuid"), @ExpandedQuery(expandedField = "serviceProvider", inventoryClass = NetworkServiceProviderInventory.class, foreignKey = "networkServiceProviderUuid", expandedInventoryKey = "uuid"), }) public class NetworkServiceL3NetworkRefInventory implements Serializable { /** * @desc l3Network uuid */ private String l3NetworkUuid; /** * @desc uuid of network service provider that provides this service. See :ref:`NetworkServiceProviderInventory` */ private String networkServiceProviderUuid; /** * @desc network service type */ private String networkServiceType; public NetworkServiceL3NetworkRefInventory() { } protected NetworkServiceL3NetworkRefInventory(NetworkServiceL3NetworkRefVO vo) { this.setL3NetworkUuid(vo.getL3NetworkUuid()); this.setNetworkServiceProviderUuid(vo.getNetworkServiceProviderUuid()); this.setNetworkServiceType(vo.getNetworkServiceType()); } public static NetworkServiceL3NetworkRefInventory valueOf(NetworkServiceL3NetworkRefVO vo) { NetworkServiceL3NetworkRefInventory inv = new NetworkServiceL3NetworkRefInventory(vo); return inv; } public static List<NetworkServiceL3NetworkRefInventory> valueOf(Collection<NetworkServiceL3NetworkRefVO> vos) { List<NetworkServiceL3NetworkRefInventory> invs = new ArrayList<NetworkServiceL3NetworkRefInventory>(vos.size()); for (NetworkServiceL3NetworkRefVO vo : vos) { invs.add(NetworkServiceL3NetworkRefInventory.valueOf(vo)); } return invs; } public String getL3NetworkUuid() { return l3NetworkUuid; } public void setL3NetworkUuid(String l3NetworkUuid) { this.l3NetworkUuid = l3NetworkUuid; } public String getNetworkServiceProviderUuid() { return networkServiceProviderUuid; } public void setNetworkServiceProviderUuid(String networkServiceProviderUuid) { this.networkServiceProviderUuid = networkServiceProviderUuid; } public String getNetworkServiceType() { return networkServiceType; } public void setNetworkServiceType(String networkServiceType) { this.networkServiceType = networkServiceType; } }