package org.ovirt.engine.core.common.interfaces; import org.ovirt.engine.core.common.businessentities.IVdsAsyncCommand; import org.ovirt.engine.core.common.vdscommands.FutureVDSCommandType; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.common.vdscommands.VDSParametersBase; import org.ovirt.engine.core.common.vdscommands.VDSReturnValue; import org.ovirt.engine.core.common.vdscommands.VdsAndVmIDVDSParametersBase; import org.ovirt.engine.core.common.vdscommands.VdsIdVDSCommandParametersBase; import org.ovirt.engine.core.compat.Guid; public interface VDSBrokerFrontend { VDSReturnValue runVdsCommand(VDSCommandType commandType, VDSParametersBase parameters); VDSReturnValue runAsyncVdsCommand(VDSCommandType commandType, VdsAndVmIDVDSParametersBase parameters, IVdsAsyncCommand command); IVdsAsyncCommand getAsyncCommandForVm(Guid vmId); IVdsAsyncCommand removeAsyncRunningCommand(Guid vmId); FutureVDSCall<VDSReturnValue> runFutureVdsCommand(FutureVDSCommandType commandType, VdsIdVDSCommandParametersBase parameters); }