Re: services_libravatar caching
| From: | Christian Weiske | Date: | Sun, 28 Oct 2012 19:06:50 +0000 |
| Subject: | Re: services_libravatar caching | ||
| References: | 1 2 3 4 5 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-55078@lists.php.net to get a copy of this message | ||
Hello Stelian,
> Changes are now in my fork, please have a look.
> >> 3. Please move DriverCacheLite.php to Driver/CacheLite and rename
> >> the class accordingly.
1. I'm a bit disappointed that you don't know about the PEAR
Class-to-filename conventions. They are even publicly accepted via
PSR-0:
> $filename = str_replace($classname, '_', '/') . '.php'
So Services_Libarvatar/Cache_Driver should be in
Services/Libravatar/Cache/Driver.php
For including the files, you assume that the file with its full is in
include path:
> require_once 'Services/Libravatar/Driver.php';
No __DIR__ and "../" at all.
Btw, all classes in that package need to be prefixed with
Services_Libravatar - so
2. There should be no default driver set, or at least a "null" driver
that does no caching at all. Currently Cache_Lite is required;
something that I would not want at all.
3. protected $dnsCache has "@var mixed". Why mixed? Shouldn't all
drivers implement the Services_Libravatar_Cache_Driver interface
Or is null allowed? Replace "mixed" with
"Services_Libravatar_Cache_Driver"
4. "@param int $time - length in seconds". Please remove the "-", it's
not necessary and not used anywhere else.
5. "@return bool;" Please describe what the return value means, e.g.
"true if saving succeeded, false if not"
6. "@return null;" This needs to be "@return void", to indicate no
return value. You also do not need to add "return null;" to that
code; PHP does that automatically anyway.
7. "Class available since Release @package_version@"
This would always update the package version, which is not what we
want :) The cache driver is a new feature, so the next
Services_Libravatar version containing it will be 0.3.0. Set this
version hard in there.
8. I'd like to be able to change the settings of the Cache_Lite object.
So please either allow passing a Cache_Lite object to the Driver
constructor, or make a getCacheLite() method in that driver.
--
Regards/Mit freundlichen Grüßen
Christian Weiske
-=≡ Geeking around in the name of science since 1982 ≡=-
Attachment: [application/pgp-signature] signature.asc
Attachment: [application/pgp-signature] signature.asc