Commit Graph

43 Commits (0ccb2c8d890753fcd6524545646f34274d977b9c)

Author SHA1 Message Date
Pieter Noordhuis e13674dd4e Expose redisGetReplyFromReader as public API 2010-11-03 00:40:07 +01:00
Pieter Noordhuis b8b296654d Strip net.c down to the bare minimum 2010-11-02 17:09:26 +01:00
Pieter Noordhuis ffa8666a64 Change error reporting to have an explicit type
When there is an I/O error, errno should be used to find out what is
wrong. In other cases, errno cannot be used. So, use an explicit type in
Hiredis to define the different error scenarios that can occur.
2010-11-02 16:36:38 +01:00
Pieter Noordhuis 5db8008d97 Remove superfluous definition 2010-11-02 14:55:24 +01:00
Pieter Noordhuis 5fa8d30599 There is no longer need for a separate redisDisconnect 2010-11-01 14:20:51 +01:00
Pieter Noordhuis ef995accb2 Strip non-blocking callbacks from hiredis.c 2010-11-01 14:13:03 +01:00
Pieter Noordhuis 4e3bd7893d Add support to lazily disconnect an asynchronous connection 2010-11-01 09:27:43 +01:00
Pieter Noordhuis 6042c569b1 Move include of stdio.h to hiredis.h for size_t 2010-10-31 17:25:20 +01:00
Pieter Noordhuis a0b9f04eaa Move stdarg.h include to the hiredis header file 2010-10-31 14:45:15 +01:00
Pieter Noordhuis 44a2d08b30 The reply object functions may not change the read tasks 2010-10-31 14:44:36 +01:00
Pieter Noordhuis 3f0394b8a9 Use a fixed size stack instead of a dynamic list for read tasks 2010-10-31 14:42:48 +01:00
Pieter Noordhuis f463734e91 Remove reply object functions from connect functions 2010-10-31 12:53:57 +01:00
Pieter Noordhuis 47e1f77149 Refactor internal function flow and add redisAppendCommand* family 2010-10-31 12:34:45 +01:00
Pieter Noordhuis 298e9325d7 First step in decoupling reply callbacks from internals 2010-10-31 10:56:24 +01:00
Pieter Noordhuis a3a405bcba Format a command using an argument vector 2010-10-31 10:34:29 +01:00
Pieter Noordhuis e95c9d4c5b Change redisFormatCommand to return the command in a char*
This allows users of the API to format a command without the need to
have all the sds functions included, only for free'ing the returned
wire-level command.
2010-10-30 20:38:29 +02:00
Pieter Noordhuis 171b5a24d4 Drop dependency on sds.h for exposed API 2010-10-30 17:47:19 +02:00
Pieter Noordhuis 1e7f5ae6bd Rename struct 2010-10-30 16:36:08 +02:00
Pieter Noordhuis d4b4a9128e Revert e5dd32d8 that added the const qualifier for command callbacks 2010-10-19 21:24:30 +02:00
Pieter Noordhuis ba42ab2ef8 Revert privdata in context callbacks to being non-const 2010-10-19 14:19:51 +02:00
Pieter Noordhuis 61ba85ce57 Move context callbacks into struct and make privdata const 2010-10-18 12:37:33 +02:00
Pieter Noordhuis 3dfacba4f7 Add comments for function prototypes in hiredis.h 2010-10-12 00:27:04 +02:00
Pieter Noordhuis a7acd97ad1 Move event_base code out of libevent.h
This removes the need to wrap an event_base pointer in the redisContext
struct and allows multiple connections to be used in a single
event_base. Also, use the *privdata argument to the provided callbacks
to curry the redisEvent struct around.
2010-10-11 18:33:15 +02:00
Nicolas Favre-Felix 135e9265ac Added event_base to libevent code. 2010-10-10 20:51:27 +02:00
Pieter Noordhuis 9cd3b03d84 Fire callback when the context is being disconnected by the user 2010-10-07 17:36:22 +02:00
Pieter Noordhuis e5dd32d809 Add const qualifier to privdata pointer for command callbacks 2010-10-07 17:35:31 +02:00
Pieter Noordhuis 1c245845ed Trigger callbacks when a command is issued or the context is free'd 2010-09-25 22:31:07 +02:00
Pieter Noordhuis 9e417047ed Add function to free an allocated context 2010-09-25 15:33:27 +02:00
Pieter Noordhuis bc3ec0f35a Rename HIREDIS_BLOCK to REDIS_BLOCK 2010-09-25 15:11:59 +02:00
Pieter Noordhuis a7d7618141 Deprecate the error object for I/O and protocol errors
Rather, use the return value REDIS_OK and REDIS_ERR to designate if
calling a function has a successful outcome. When there was an error in
performing the call the error field will be set inside the reader or the
context.
2010-09-25 15:09:13 +02:00
Pieter Noordhuis e6fb160b44 Rename defines HIREDIS_* to REDIS_* 2010-09-25 12:06:47 +02:00
Pieter Noordhuis bb668e1b94 Support callback functions in a non-blocking context 2010-09-25 12:06:00 +02:00
Pieter Noordhuis 817d26b81d Use context variable to keep state for a connection
The context supports both blocking and non-blocking connections. All
read and write events are not handled by hiredis, but hiredis exposes an
API for buffered reading/writing to Redis.
2010-09-24 18:42:22 +02:00
Pieter Noordhuis af8ba74cbf Rename functions to be more consistent, split feed from get reply 2010-09-21 11:39:18 +02:00
Pieter Noordhuis b1bedf5c6d Use a set of function pointers for building the reply
Allows libraries to wrap the reply parsing code and build the reply in a
streaming fashion. Reply objects can immediately be initialized to the
required type without having to convert an intermediary format.
2010-09-20 22:04:35 +02:00
Pieter Noordhuis db5244045c Introduce read tasks to allow hooking other code into reply parsing 2010-09-20 18:02:28 +02:00
Pieter Noordhuis b1fa529cf9 Add function to check if the reply reader is empty 2010-09-20 15:26:18 +02:00
Pieter Noordhuis e944ea3662 Add reply type for protocol errors, in order to never exit() 2010-09-20 14:05:23 +02:00
Pieter Noordhuis e621f31306 Expose API for streaming bytes to a reply 2010-09-20 09:50:19 +02:00
Pieter Noordhuis 457cdbf7c5 Rewrite reply parsing to use a read buffer 2010-09-19 18:47:05 +02:00
Pierre Riteau 4693a51707 Constify the API and enable -Wwrite-strings
The API is more similar to printf now.
2010-05-25 14:02:14 +02:00
antirez 3d8d3aa0e5 better example and license information 2010-05-18 17:45:36 +02:00
antirez 4f6fc6dfb1 hiredis was extracted from redis-tools, reverted to standard malloc/free, ported to the new protocol, and started as a stand alone project in order to support the need of a C client in the Redis community 2010-05-18 17:11:09 +02:00