Daniele Alessandri
b253bdc41e
[tests] Improve the basic framework of our test suite.
...
We now have a base test case class for Predis (namely PredisTestCase)
grouping various commonly used utility methods shared by all of the
tests in the suite, greatly improving reusability.
2013-11-30 19:38:27 +01:00
Daniele Alessandri
2a5483df90
Reorganize the Predis\Profile namespace.
...
The profile factory code has been extrapolated into a the new class
Predis\Profile\Factory (final and with only static methods).
2013-11-22 12:01:29 +01:00
Daniele Alessandri
e6f1788e27
Rename interfaces and classes in the Predis\Cluster namespace.
...
A few methods were renamed accordingly for consistency
2013-11-16 16:21:27 +01:00
Daniele Alessandri
f18d7103f5
[tests] Remove useless backslash in "use" directive.
2013-11-16 14:57:00 +01:00
Daniele Alessandri
e54bc31212
Create Predis\Cluster namespace and move related classes / interfaces.
2012-07-30 20:10:14 +02:00
Daniele Alessandri
7683f97ff2
Move the hash generator inside the command hash strategy class.
...
This should make things a tiny bit faster (we are speaking about micro
optimizations anyway) but more importantly it results in a better
encapsulation.
2012-07-30 15:42:45 +02:00
Daniele Alessandri
d0572b0efc
Rename command hash strategy cass used by Predis cluster.
2012-07-29 12:07:48 +02:00
Daniele Alessandri
559853bdd5
Move some classes and interfaces in other namespaces.
2012-07-26 22:37:31 +02:00
Daniele Alessandri
f2d92f1e29
Expose the command hash strategy from the predis cluster class.
...
This will be useful to add, remove or change the handler used to
extract, validate and hash the keys of each command instance.
2012-07-25 21:25:50 +02:00
Daniele Alessandri
511fe0bbab
Rewrite the logic used to handle Redis commands with clustering.
...
The reason for this change is to support the upcoming redis-cluster since
it has different behaviors compared to the client-side cluster implementation
provided by Predis. For example redis-cluster will not support key tags or
certain operations currently available with our client-side implementation.
2012-05-16 16:50:37 +02:00
Daniele Alessandri
ec723fd4a9
Remove the ability to execute a command on all the nodes of a cluster.
...
The reason for this change is that not every cluster implementation can support
this behaviour, think of Redis cluster for example. We moved the implementation
of this method in Predis\Connection\PredisCluster since it can still be useful.
2012-02-07 15:40:19 +01:00
Daniele Alessandri
dc14c29676
Rename certain namespaces, interfaces and classes.
...
Now we follow a Symfony2-like naming convention for namespaces, interfaces
and classes sticking with one clear rule.
- Renamed namespaces:
- Predis\Network
- Predis\Profiles
- Predis\Iterators
- Predis\Options
- Predis\Commands
- Predis\Commands\Processors
- Renamed interfaces:
- Predis\IReplyObject
- Predis\IRedisServerError
- Predis\IConnectionFactory
- Predis\IConnectionParameters
- Predis\Options\IOption
- Predis\Options\IClientOptions
- Predis\Profile\IServerProfile
- Predis\Pipeline\IPipelineExecutor
- Predis\Distribution\INodeKeyGenerator
- Predis\Distribution\IDistributionStrategy
- Predis\Protocol\IProtocolProcessor
- Predis\Protocol\IResponseReader
- Predis\Protocol\IResponseHandler
- Predis\Protocol\ICommandSerializer
- Predis\Protocol\IComposableProtocolProcessor
- Predis\Network\IConnection
- Predis\Network\IConnectionSingle
- Predis\Network\IConnectionComposable
- Predis\Network\IConnectionCluster
- Predis\Network\IConnectionReplication
- Predis\Commands\ICommand
- Predis\Commands\IPrefixable
- Predis\Command\Processor\ICommandProcessor
- Predis\Command\Processor\ICommandProcessorChain
- Predis\Command\Processor\IProcessingSupport
- Renamed Classes:
- Predis\Commands\Command
- Predis\Network\ConnectionBase
- Classes moved to different namespaces:
- Predis\MonitorContext
Meh
2012-01-31 18:19:18 +01:00