package org.ovirt.engine.core.dao.network; import java.util.List; import org.ovirt.engine.core.common.businessentities.network.VmNic; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.GenericDao; public interface VmNicDao extends GenericDao<VmNic, Guid> { /** * Retrieves all interfaces for the given VM id. * * @param id * the Vm id * @return the list of interfaces */ List<VmNic> getAllForVm(Guid id); /** * Retrieves all interfaces for the given template id. * * @param id * the template id * @return the list of interfaces */ List<VmNic> getAllForTemplate(Guid id); /** * Retrieves the interfaces that the given network is attached to. * * @param networkId * the network * @return the list of VmNetworkInterfaces */ List<VmNic> getAllForNetwork(Guid networkId); /** * Retrieves the VmTemplate Network Interfaces that the given network is attached to. * * @param networkId * the network * @return the list of VmNetworkInterfaces */ List<VmNic> getAllForTemplatesByNetwork(Guid networkId); /** * Retrieves the MAC addresses of the Vms in the given Data Center. * * @param dataCenterId * the Data Center * @return the list of MAC addresses */ List<String> getAllMacsByDataCenter(Guid dataCenterId); /** * Retrieves the MAC addresses of the Vms in the given Cluster. * @param clusterId ID of cluster * @return the list of MAC addresses belonging to given Cluster. */ List<String> getAllMacsByClusterId(Guid clusterId); /** * Retrieves the plugged VmNetworkInterfaces that have the given MAC address * * @param macAddress * the MAC address * @return the list of plugged VmNetworkInterfaces */ List<VmNic> getPluggedForMac(String macAddress); }