Hi zusammen,
vermutlich eine grundsätzliche Frage die zu den Basics gehört, stellen muss ich Sie aber trotzdem :-)
Ich habe ein paar Klassen mit den Namen "controller, common, driver". Die Klasse controller ist mein Hauptobjekt mit dem ich auch arbeite, common enthält nur Globale Funktionen wie z.B. trim,round etc. die mir in der controller Klasse helfen. Die Klasse driver enthält spezielle Mehoden die ich gern dynamisch in die Klasse controller (ueber)laden will. Alle Driver haben immer die gleichen Methoden, die ich dann durch den Controller anspreche.
Mein Problem ist es das driver Modul dynamisch in das controller Modul zu laden.
Ein Beispiel:
package controller;
use strict;
use warnings;
use common; # soll immer im controller und auch in allen
# und moeglichst auch in den unterklassen vorhanden sein
our @ISA = qw( common );
sub new {
my ($class,$driver) = @_;
my $self = {};
## nun will ich das driver modul
## laden und alle methoden und variablen vom driver
## in den controller holen
## weil es versch. driver gibt muss dieses modul dynamisch
## geladen werden - allerdings nie mehr als 1 driver
use $driver;
our @ISA = $driver;
bless $self,$class;
return $self;
}
und hier ein Driver:
package mydriver;
use strict;
use warnings;
sub new {
my ($class) = @_;
my $self = {'a' => 1,'b' => 2};
bless $self,$class;
return $self;
}
sub a {
}
sub b {
}
Kann mir jemand sagen wie man den driver ordentlich in den controller laden kann?
Danke für eure Hilfe & Viele Grüße
Chrisi