|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 26 Nov 2002 17:04:22 To : "alexander kudrikov" Subject : Re: SMTP поверх proxy -------------------------------------------------------------------------------- Здравствуй, alexander kudrikov. ak> > > Я вижу выход только в наследовании от NET::SMPT и полном дублировании ak> его ak> > >конструктора без его вызова ak> > > хотя не уверен что это поможет. ak> > Я делал похожую штуку для News::NNTPClient именно так - переписав ak> > конструктор. Работало как из пушки. ak> Я только начинаю писать но перле, но новичкам везет :) Частично мне удалось ak> это реализовать не совсем хорошим способом :) ak> Я обнаружил, что на перле могу запросто в рантайме поменять чужому классу ak> его родителя. ak> Таким образом я сделал ProxySocket наследника от IO::Socket::INET, а ak> классу SMTP, который наследовался от IO::Socket::INET сказал чтоб он ak> наследовался не от него а от ProxySocket - по идее ему пофиг, что добавили ak> промежуточное звено. Т.е. ak> package MySMTP; ak> @ISA=qw(Net::SMTP); ak> @Net::SMTP::ISA=qw(Net::CMD ProxySocket). ak> В результате он вызывает в своем конструкторе не INETовскй а мой. ak> Проблемма осталась в том, как в него передать дополнительные параметры? Т.е. ak> ProxySocket наряду со стандартными берет у меня еще Proxy => 'some proxy ak> addr', но собака SMTP->new вызывает родителя с явным списком параметров :((( ak> Что бы можно было еще придумать? Переписать конструктор SMTP. Оставив все остальное. Это perl. -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/14454cf5f2e2f.html, оценка из 5, голосов 10
|