Re: connecting()?

"David E. Wheeler" <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.sybase.devel
Message-ID <[email protected]>
On Apr 15, 2010, at 5:17 AM, Tim Bunce wrote:

>    $drh = DBI->install_driver($driver);
>    $dbh = $drh->connect(...);
> 
> Assuming we added a $dbh->connecting() method, how would it be called,
> and how would the callback have been enabled prior to calling it?

In connect(), before $connect_meth, just as connected() is called in that method after $connect_meth.

	$dbh->connected(@orig_args);
	unless ($dbh = $drh->$connect_meth($dsn, $user, $pass, $attr)) {

> Why not register the callback on the driver:
> 
>    DBI->install_driver('Pg')->{Callbacks}{connect} = ...;
> 
> That'll affect all subsequent connects using that driver and won't work
> with proxy drivers like Gofer, which is why DBI docs discourage messing
> with driver handles, but it may fit your needs.

It's not my needs. Someone is creating a CPAN module I think. His needs were met by connected(), but I think that connecting() would be useful as well.

> If we did that (and handled backwards compatibility somewhow)
> then presumably new_child() could apply the Callbacks attribute
> which would then fire on the subsequent $dbh->connect call.

That would be cool. I, alas, have a very short supply of tuits these days.

Best,

David
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.