diff options
Diffstat (limited to 'os-plugins/OpenSLX')
-rw-r--r-- | os-plugins/OpenSLX/OSPlugin/Base.pm | 12 | ||||
-rw-r--r-- | os-plugins/OpenSLX/OSPlugin/Roster.pm | 20 |
2 files changed, 32 insertions, 0 deletions
diff --git a/os-plugins/OpenSLX/OSPlugin/Base.pm b/os-plugins/OpenSLX/OSPlugin/Base.pm index 34b551d9..4b370375 100644 --- a/os-plugins/OpenSLX/OSPlugin/Base.pm +++ b/os-plugins/OpenSLX/OSPlugin/Base.pm @@ -128,3 +128,15 @@ sub postRemovalPhase my $pluginRepositoryPath = shift; my $pluginTempPath = shift; } + +sub copyRequiredFilesIntoInitramfs +{ # called by config-demuxer in order to give the plugin a chance to copy + # all required files from the vendor-OS into the initramfs. + # N.B.: Only files that are indeed required by the initramfs should be + # copied here, i.e. files that are needed *before* the root-fs + # has been mounted! + my $self = shift; + my $targetPath = shift; + my $attrs = shift; + my $makeInitRamFSEngine = shift; +} diff --git a/os-plugins/OpenSLX/OSPlugin/Roster.pm b/os-plugins/OpenSLX/OSPlugin/Roster.pm index 832b0bb3..791865f1 100644 --- a/os-plugins/OpenSLX/OSPlugin/Roster.pm +++ b/os-plugins/OpenSLX/OSPlugin/Roster.pm @@ -17,6 +17,7 @@ use strict; use warnings; use OpenSLX::Basics; +use Storable qw(dclone); my %plugins; @@ -39,6 +40,25 @@ sub getAvailablePlugins return \%pluginInfo; } +=item C<getPlugin()> + +Returns an instance of the plugin with the given name + +=cut + +sub getPlugin +{ + my $class = shift; + my $pluginName = shift; + + $class->_init() if !%plugins; + + my $plugin = $plugins{$pluginName}; + return if !$plugin; + + return dclone($plugin); +} + =item C<getPluginAttrInfo()> Returns a hash that contains info about the attributes support by the |