summaryrefslogblamecommitdiffstats
path: root/lib/OpenSLX/DistroUtils/Engine.pm
blob: 5482f1d20dca9baed4b67de11ce8d875a8e2b9e0 (plain) (tree)





























                                                                              
package OpenSLX::DistroUtils::Engine;

use OpenSLX::Basics;

sub new
{
    my $class = shift;
    my $self = {};
    return bless $self, $class;
}


sub loadDistro {
    my $self = shift;
    my $distroName = shift;
    
    my $distro;
    my $loaded = eval {
            $distro = instantiateClass("OpenSLX::DistroUtils::${distroName}");
            return 0 if !$distro;   # module does not exist, try next
            1;
        };
     
    if (!$loaded) {
        $distro = instantiateClass("OpenSLX::DistroUtils::Base");
    }
    return $distro;
}

1;