| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 
							- <?php
 
- /**
 
-  * Credis_Module
 
-  *
 
-  * Implements Redis Modules support. see http://redismodules.com
 
-  *
 
-  * @author Igor Veremchuk <igor.veremchuk@gmail.com>
 
-  * @license http://www.opensource.org/licenses/mit-license.php The MIT License
 
-  * @package Credis_Module
 
-  */
 
- class Credis_Module
 
- {
 
-     const MODULE_COUNTING_BLOOM_FILTER = 'CBF';
 
-     /** @var Credis_Client */
 
-     protected $client;
 
-     /** @var  string */
 
-     protected $moduleName;
 
-     /**
 
-      * @param Credis_Client $client
 
-      * @param string $module
 
-      */
 
-     public function __construct(Credis_Client $client, $module = null)
 
-     {
 
-         $client->forceStandalone(); // Redis Modules command not currently supported by phpredis
 
-         $this->client = $client;
 
-         if (isset($module)) {
 
-             $this->setModule($module);
 
-         }
 
-     }
 
-     /**
 
-      * Clean up client on destruct
 
-      */
 
-     public function __destruct()
 
-     {
 
-         $this->client->close();
 
-     }
 
-     /**
 
-      * @param $moduleName
 
-      * @return $this
 
-      */
 
-     public function setModule($moduleName)
 
-     {
 
-         $this->moduleName = (string) $moduleName;
 
-         return $this;
 
-     }
 
-     /**
 
-      * @param string $name
 
-      * @param string $args
 
-      * @return mixed
 
-      */
 
-     public function __call($name, $args)
 
-     {
 
-         if ($this->moduleName === null) {
 
-             throw new \LogicException('Module must be set.');
 
-         }
 
-         return call_user_func(array($this->client, sprintf('%s.%s', $this->moduleName, $name)), $args);
 
-     }
 
- }
 
 
  |