public function __construct(array $opts = array())
{
if (empty($opts['drivers'])) {
$opts['drivers'] = array('Horde_Compress_Fast_Lz4', 'Horde_Compress_Fast_Lzf', 'Horde_Compress_Fast_Null');
if (!empty($opts['zlib'])) {
array_unshift($opts['drivers'], 'Horde_Compress_Fast_Zlib');
}
}
foreach ($opts['drivers'] as $val) {
if (($ob = new $val()) && $ob instanceof Horde_Compress_Fast_Base && $val::supported()) {
$this->_compress = $ob;
break;
}
}
if (!isset($this->_compress)) {
throw new Horde_Compress_Fast_Exception('Could not load a valid compression driver.');
}
}