package org.ovirt.engine.core.dao; import java.util.Collection; import java.util.List; import org.ovirt.engine.core.common.businessentities.VmGuestAgentInterface; import org.ovirt.engine.core.compat.Guid; /** * {@link VmGuestAgentInterfaceDao} defines a type for performing CRUD operations on instances of * {@link VmGuestAgentInterface}. */ public interface VmGuestAgentInterfaceDao extends Dao { /** * Returns a list of the VmGuestAgentInterfaces for the given VM Id * @param vmId * the VM's ID * @return the list of VmGuestAgentInterfaces */ List<VmGuestAgentInterface> getAllForVm(Guid vmId); /** * Returns a list of the VmGuestAgentInterfaces for the given VM Id * @param vmId * the VM's ID * @param userId * the ID of the user requesting the information * @param filtered * Whether the results should be filtered according to the user's permissions * @return the list of VmGuestAgentInterfaces */ List<VmGuestAgentInterface> getAllForVm(Guid vmId, Guid userId, boolean filtered); /** * Removes all the VmGuestAgentInterfaces of the given VMs * @param vmIds * the VMs' IDs */ void removeAllForVms(Collection<Guid> vmIds); /** * Persists the given VmGuestAgentInterface * @param vmGuestAgentInterface * the VmGuestAgentInterface */ void save(VmGuestAgentInterface vmGuestAgentInterface); }