Thread Handler <DATA> und Vererbung (2 answers)
Opened by rosti at 2012-04-06 12:20

rosti
 2012-04-06 12:20
#157293 #157293
User since
2011-03-19
3194 Artikel
BenutzerIn
[Homepage]
user image
Hallo Ihr Lieben,

in einer Klassenhierarchie habe ich die Methode data() in der Basisklasse:

Code (perl): (dl )
1
2
3
4
5
6
# Basisklasse ResponseHandler
sub data{
        my $self = shift;
        local $/ = undef;
        $self->{BODY} = <DATA>;
}


Weiter unten gibt es die Klasse Test::Home, welche von der Basisklasse erbt. In der Datei Home.pm (Class Test::Home) soll nun auf die Daten unterhalb __DATA__ zugegriffen werden. Aber das funktioniert verständlicherweise nur, wenn die Methode data() in der Datei Home.pm selbst notiert ist (Overload Method), wenn das nicht der Fall ist, wird die Methode data() aus der Basisklasse ausgeführt, und da bezieht sich der Handler <DATA> natürlich auf die Datei ResponseHandler.pm.

Soweit ist mir das klar. Fräge:

Gibt es eine Möglichkeit, den <DATA>-Handler so umzubiegen, dass es nicht mehr erforderlich ist, in Home.pm u.a. Subklassen o.g. Methode selbst zu notieren???

Also, der Methode data() beizubringen, auf welche Datei <DATA> zu beziehen ist?

Eine Lösung wäre absolut geil ;)

View full thread Handler <DATA> und Vererbung