utility_handlers: simplify request processing(3)

NAME
utility_handlers: simplify request processing - A group of handlers intended to simplify certain aspects of processing a request for a MIB object.

  Modules
bulk_to_next: convert GETBULK requests into GETNEXT requests for the handler.
The only purpose of this handler is to convert a GETBULK request to a GETNEXT request.

cache_handler: Maintains a cache of data for use by lower level handlers.
This helper checks to see whether the data has been loaded 'recently' (according to the timeout for that particular cache) and calls the registered 'load_cache' routine if necessary.

debug: print out debugging information about the handler chain being called.
This is a useful module for run-time debugging of requests as the pass this handler in a calling chain.

mode_end_call: at the end of a series of requests, call another handler hook.
Handlers that want to loop through a series of requests and then receive a callback at the end of a particular MODE can use this helper to make this possible.

multiplexer: splits mode requests into calls to different handlers.
The multiplexer helper lets you split the calling chain depending on the calling mode (get vs getnext vs set).

read_only: make your handler read_only automatically
The only purpose of this handler is to return an appropriate error for any requests passed to it in a SET mode.

row_merge: Calls sub handlers with request for one row at a time.
This helper splits a whole bunch of requests into chunks based on the row index that they refer to, and passes all requests for a given row to the lower handlers.

serialize: Calls sub handlers one request at a time.
This functionally passes in one request at a time into lower handlers rather than a whole bunch of requests at once.

Detailed Description

A group of handlers intended to simplify certain aspects of processing a request for a MIB object.

These helpers do not implement any MIB objects themselves. Rather they handle specific generic situations, either returning an error, or passing a (possibly simpler) request down to lower level handlers.