Evo C++ Library v0.5.1
Public Member Functions | List of all members
MemcachedServerHandlerBase::DeferredReply Struct Reference

#include <evo/async/memcached_server.h>

Inheritance diagram for MemcachedServerHandlerBase::DeferredReply:
Inheritance graph
[legend]

Detailed Description

Deferred reply helper – deferred event objects should hold or inherit this, and use to send deferred response.

Public Member Functions

 DeferredReply (DeferredContext &context, ulong id)
 Constructor. More...
 
 ~DeferredReply ()
 Destructor. More...
 
void deferred_reply_delete (bool success)
 Finish delete request and report result. More...
 
void deferred_reply_error (const SubString &msg)
 Finish deferred response with an error. More...
 
void deferred_reply_get (const SubString &key, const SubString &value, uint32 flags, uint64 *cas_id=NULL)
 Send get request value for key. More...
 
void deferred_reply_get_end ()
 Finish response for get request. More...
 
void deferred_reply_increment (UInt64 value)
 Finish increment/decrement request and report result. More...
 
void deferred_reply_store (Memcached::StoreResult result)
 Finish set/store request and report result. More...
 
void deferred_reply_touch (bool success)
 Finish touch request and report result. More...
 

Constructor & Destructor Documentation

◆ DeferredReply()

DeferredReply ( DeferredContext context,
ulong  id 
)
inline

Constructor.

Parameters
contextContext to use
idRequest ID to use

◆ ~DeferredReply()

~DeferredReply ( )
inline

Destructor.

Member Function Documentation

◆ deferred_reply_delete()

void deferred_reply_delete ( bool  success)
inline

Finish delete request and report result.

Parameters
successWhether successful, false if key not found

◆ deferred_reply_error()

void deferred_reply_error ( const SubString msg)
inline

Finish deferred response with an error.

Parameters
msgError message to send back to client – must not have any newlines

◆ deferred_reply_get()

void deferred_reply_get ( const SubString key,
const SubString value,
uint32  flags,
uint64 *  cas_id = NULL 
)
inline

Send get request value for key.

  • This may be called multiple times, once per requested key
  • Keys not found are skipped and don't have a response value
  • After last response value call deferred_reply_get_end() to finish the response
Parameters
keyKey for value to send
valueValue to send for key
flagsUser flags stored with value
cas_idCompare-And-Swap ID to send, NULL for none – this must only be non-null for CAS GET request variants, see GetAdvParams

◆ deferred_reply_get_end()

void deferred_reply_get_end ( )
inline

Finish response for get request.

◆ deferred_reply_increment()

void deferred_reply_increment ( UInt64  value)
inline

Finish increment/decrement request and report result.

Parameters
valueResult value after increment/decrement, null if key not found

◆ deferred_reply_store()

void deferred_reply_store ( Memcached::StoreResult  result)
inline

Finish set/store request and report result.

Parameters
resultCommand result – see Memcached::StoreResult

◆ deferred_reply_touch()

void deferred_reply_touch ( bool  success)
inline

Finish touch request and report result.

Parameters
successWhether successful, false if key not found

The documentation for this struct was generated from the following file: