Commit Graph

314 Commits

Author SHA1 Message Date
Daniele Alessandri 8769567c7e Remove Predis\Client::rawCommand() due to interface inconsistencies. 2010-09-18 18:31:05 +02:00
Daniele Alessandri 5124fd1d43 Push initialization commands already created instances of Predis\IConnectionSingle. 2010-09-18 18:26:23 +02:00
Daniele Alessandri 2eec3929fb Get the connection out of a cluster only once inside Predis\Client::getClientFor(). 2010-09-18 17:05:54 +02:00
Daniele Alessandri aa0ea048ae Accept instances of Predis\IConnection or Predis\ConnectionParameters as parameters for the constructor of Predis\Client. 2010-09-18 14:56:53 +02:00
Daniele Alessandri f67082072d Perform (p)unsubscribtion only if (p)subscribed to a channel when the destructor for Predis\PubSubContext is invoked. 2010-09-17 22:23:29 +02:00
Daniele Alessandri ac5f34b0ad Make arguments handling more solid for the SORT command. 2010-09-17 22:10:05 +02:00
Daniele Alessandri 78f11f1a0f Remove useless code duplication. 2010-09-17 21:55:25 +02:00
Daniele Alessandri 9468891faf Fix checks on the value for the STORE argument (ISSUE #13). 2010-09-17 11:36:17 +02:00
Daniele Alessandri 9b849d49c0 Remove some ugly code. And by ugly, I mean really ugly. 2010-08-15 19:15:58 +02:00
Daniele Alessandri b40c2fd214 Remove the static method Predis\Client::create(). 2010-08-15 17:58:45 +02:00
Daniele Alessandri 3487cc219c Remove the method Predis\Client::pipelineSafe(). 2010-08-15 17:52:08 +02:00
Daniele Alessandri 104bfa3332 Move some common code for connections in the Predis\Connection class. 2010-08-15 16:26:37 +02:00
Daniele Alessandri 68397fe958 Rename Predis\Connection to Predis\ConnectionFactory and disallow the creation of instances for this class. 2010-08-15 15:57:24 +02:00
Daniele Alessandri 8428f9916a More code clean-ups. 2010-08-15 15:08:35 +02:00
Daniele Alessandri 2aec7bfeda Leverage the 'use' statement to make the code a bit shorter and cleaner. 2010-08-15 14:52:47 +02:00
Daniele Alessandri b4b06acfe7 Add the Predis\ICommand interface. 2010-08-15 11:43:03 +02:00
Daniele Alessandri fbd5059fb2 Do not use magic methods to serialize the command buffer: rename Predis\Command::__invoke() to Predis\Command::serialize(). 2010-08-15 11:34:24 +02:00
Daniele Alessandri 6ea96e82f9 Make Predis\Command::serializeRequest() a protected method. 2010-08-15 11:20:39 +02:00
Daniele Alessandri e7b8b50dda Merge the serialization of Predis\MultiBulkCommand into Predis\Command since it is the preferred way to send commands to Redis servers >= 1.2. 2010-08-15 11:16:30 +02:00
Daniele Alessandri a1f202527f Do not implicitly extract arguments for multi-bulk commands when the first (and only) element of the arguments array is an array itself. 2010-08-15 11:02:48 +02:00
Daniele Alessandri 618708b853 Fix handling of the WEIGHT modifier for ZUNIONSTORE and ZINTERSTORE with more than two weights specified. 2010-07-11 16:40:27 +02:00
Daniele Alessandri ad48369a6b Update CHANGELOG. 2010-07-11 16:40:18 +02:00
Daniele Alessandri 12298d599b Add support for the LIMIT modifier in ZRANGEBYSCORE. 2010-07-07 20:17:22 +02:00
Daniele Alessandri d2cd1b70b8 ZRANGE, ZREVRANGE and ZRANGEBYSCORE accepts an array instance for optional modifiers. 2010-07-07 20:17:14 +02:00
Daniele Alessandri 7d447f8493 More appropriate type-check to detect clustered connections. 2010-07-02 22:38:16 +02:00
Daniele Alessandri 9f21f5a635 Code formatting. 2010-07-02 22:29:47 +02:00
Daniele Alessandri 2af73f4fa1 Deprecate long method names for Redis commands and move them into new server profiles available in the Predis_Compatibility.php file. 2010-07-02 21:52:56 +02:00
Daniele Alessandri a4df829b19 Deprecate Predis\InlineCommand and Predis\BulkCommand. Those classes are made available through the Predis_Compatibility.php file. 2010-07-02 20:58:15 +02:00
Daniele Alessandri 1bb04baf78 Merge branch 'version-0.6'
Conflicts:
	lib/Predis.php
2010-07-02 20:51:18 +02:00
Daniele Alessandri 50970c003b Accept instances of Predis\ConnectionParameters in Predis\Client::__construct(). 2010-06-30 16:17:19 +02:00
Daniele Alessandri 3853e62d34 Make sure that Predis\MultiExecBlock and Predis\PubSubContext are not initialized over a cluster of connections. 2010-06-29 20:07:57 +02:00
Daniele Alessandri ed105ab4fc Centralize code used to check if a connection object instance is a cluster of connections. 2010-06-29 20:07:51 +02:00
Daniele Alessandri adb489b4d3 Internal optimizations for the Predis\PubSubContext class. 2010-06-29 14:39:24 +02:00
Daniele Alessandri 5cf10ddbfa Add support for variable arguments in Predis\Client::pipeline(). 2010-06-26 12:49:57 +02:00
Daniele Alessandri 5defb14698 Merge branch 'connections' 2010-06-24 17:23:01 +02:00
Daniele Alessandri ac2b718387 Handle aborted MULTI/EXEC transactions. 2010-06-12 10:52:45 +02:00
Daniele Alessandri 89e46912a2 Add support for variable arguments in Predis\Client::multiExec(). 2010-06-12 10:40:28 +02:00
Daniele Alessandri 200d864df3 Parse WATCH and UNWATCH replies as boolean values. 2010-06-12 10:12:07 +02:00
Daniele Alessandri 35b8588dc4 Check for the capabilities of the passed client instance when initializing a \Predis\PubSubContext instance. 2010-06-12 10:06:13 +02:00
Daniele Alessandri 371a7ad69b Less code duplication please. 2010-06-12 09:59:20 +02:00
Daniele Alessandri 5ae476ee16 Check for the capabilities of the passed client instance when initializing a \Predis\MultiExecBlock instance. 2010-06-12 09:52:32 +02:00
Daniele Alessandri f4f19ace0a Adopt more consistent behaviours for \Predis\MultiExecBlock. 2010-06-12 09:27:59 +02:00
Daniele Alessandri 50092d1421 Start adding support for WATCH/UNWATCH to \Predis\MultiExecBlock. 2010-06-12 08:57:42 +02:00
Daniele Alessandri 5287bb2387 New commands: WATCH and UNWATCH (Redis v2.2-dev). 2010-06-12 08:16:00 +02:00
Daniele Alessandri 66a0458018 Leverage the global connection creator facility to alias the 'redis' scheme to the 'tcp' scheme. 2010-06-10 20:37:34 +02:00
Daniele Alessandri 2543bb30cc Map URI schemes to connection classes. 2010-06-10 19:47:40 +02:00
Daniele Alessandri 1fd715e7a5 Prepare to return the appropriate instance of Predis\IConnectionSingle based on the URI scheme. 2010-06-10 11:47:09 +02:00
Daniele Alessandri e191d0a7ce Add required methods to Predis\IConnectionSingle and Predis\IConnectionCluster interfaces. 2010-06-10 11:26:12 +02:00
Daniele Alessandri a2c9cb38a5 Accept the 'scheme' argument for Predis\ConnectionParameters. The 'redis' scheme is now an alias of 'tcp' for compatibility with older versions of Predis. 2010-06-10 11:19:14 +02:00
Daniele Alessandri 72c41a25cb Rename Predis\Connection to Predis\TcpConnection. 2010-06-10 10:40:09 +02:00