package org.inria.myriads.snoozenode.localcontroller.provisioner; import org.inria.myriads.snoozecommon.communication.localcontroller.hypervisor.HypervisorSettings; import org.inria.myriads.snoozenode.configurator.imagerepository.ImageRepositorySettings; import org.inria.myriads.snoozenode.configurator.provisioner.ProvisionerSettings; import org.inria.myriads.snoozenode.localcontroller.provisioner.api.VirtualMachineProvisioner; import org.inria.myriads.snoozenode.localcontroller.provisioner.api.impl.LibvirtProvisioner; /** * * Virtual machine provisioner. * * @author msimonin * */ public final class VirtualMachineProvisionerFactory { /** * Hide the consturctor. */ private VirtualMachineProvisionerFactory() { throw new UnsupportedOperationException(); } /** * * Creates a new provisioner. * * @param provisionerSettings The provisioner settings. * @param hypervisorSettings The hypervisor settings. * @param imageSettings The image settings. * @return Virtual Machine Provisioner. */ public static VirtualMachineProvisioner newProvisioner( ProvisionerSettings provisionerSettings, HypervisorSettings hypervisorSettings, ImageRepositorySettings imageSettings) { return new LibvirtProvisioner(provisionerSettings, hypervisorSettings, imageSettings); } }