Evo C++ Library v0.5.1
Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
AsyncServerHandler Struct Reference

#include <evo/ioasync_server.h>

Inheritance diagram for AsyncServerHandler:
Inheritance graph
[legend]

Detailed Description

Base async I/O server handler.

Classes

struct  DeferredContextT
 Holds a context for deferred responses in progress. More...
 
struct  Global
 Default global data (empty). More...
 
struct  ResponseResult
 Handler response result. More...
 
struct  Shared
 Default shared data (empty) using default global data type. More...
 
struct  SimpleSharedBase
 Default shared data (empty) with template parameter for global data type. More...
 

Public Types

enum  ResponseType { rtNORMAL, rtDEFERRED, rtHANDLED, rtCLOSE }
 Handler response type – used with ResponseResult. More...
 

Public Member Functions

 AsyncServerHandler ()
 Constructor. More...
 
void set_id ()
 Create and set new ID for current request/response. More...
 

Public Attributes

AsyncBuffers buffers
 Buffers for async I/O. More...
 
ulong id
 Request/reply ID, used by reply manager (set by parent protocol class) More...
 
AsyncServerReply reply
 Server reply manager, used to track deferred events and queue out of order replies. More...
 

Static Public Attributes

static const size_t MAX_INITIAL_READ = 8192
 Max initial read size. More...
 

Member Enumeration Documentation

◆ ResponseType

Handler response type – used with ResponseResult.

Enumerator
rtNORMAL 

Normal response.

rtDEFERRED 

Defer response while waiting for an event – an error if deferred response not supported under current conditions.

rtHANDLED 

Response already sent so request is handled, use if error was sent.

rtCLOSE 

Close connection.

Constructor & Destructor Documentation

◆ AsyncServerHandler()

AsyncServerHandler ( )
inline

Constructor.

Member Function Documentation

◆ set_id()

void set_id ( )
inline

Create and set new ID for current request/response.

  • Called by parent protocol class

Member Data Documentation

◆ buffers

AsyncBuffers buffers

Buffers for async I/O.

◆ id

ulong id

Request/reply ID, used by reply manager (set by parent protocol class)

◆ MAX_INITIAL_READ

const size_t MAX_INITIAL_READ = 8192
static

Max initial read size.

  • Default is 8 KB, but the protocol handler may override with a new default
  • Override to tune
  • Use 0 for unlimited (not recommended)

◆ reply

Server reply manager, used to track deferred events and queue out of order replies.


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