NAME
ResourcePool::Resource - A wraper class for a resource
DESCRIPTION
This type of classes is used by the ResourcePool internaly. It's thougt to be an abstract base class for further resources which will be used with the ResourcePool.
This classes gets constructed by a Factory like ResourcePool::Factory. The factory knows about the actual parameters to pass to the Resource. So in fact a Factory doens't create the resource like DBI , it creates a wrapper Resource for it which also supports some test functionality.
Every from ResourcePool::Resource derived class must overload this member functions:
$self->close()
Closes a connection gracefully.
$self->fail_close()
Closes a failed connection and ignores error (since this connection is known as bad)
$self->get_plain_resource
Returns the nacked resource which can be used by the client. This an the DBI or Net::LDAP handle for example.
Additonally a ResourcePool::Resource derived class should overload at least one of the check methods:
$self->precheck()
Checks a connection. This method is called by the get() method of the ResourcePool before it returns a connection. The default implementation always returns true.
$self->postcheck()
Checks a connection. This method is called by the free() method of the ResourcePool to check if a connection is still valid. The default implementation always returns true.
SEE ALSO
ResourcePool(3pm), ResourcePool::Resource::DBI(3pm), ResourcePool::Resource::Net::LDAP(3pm)
AUTHOR
Copyright (C) 2001 by Markus Winand <mws@fatalmind.com>
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.