PingAccess Agent SDK for C
Public Attributes | List of all members
paa_cache_struct Struct Reference

#include <paa-cache.h>

Public Attributes

void * impl
 
apr_status_t(* get_agent_response )(const paa_cache *cache, apr_pool_t *pool, const paa_client_request *req, const paa_agent_response **output)
 
apr_status_t(* put_agent_response )(const paa_cache *cache, apr_pool_t *pool, const paa_client_request *req, const paa_agent_response *agent_resp)
 
apr_status_t(* invalidate_scope )(const paa_cache *cache, apr_pool_t *request_pool, const char *scope)
 

Detailed Description

PAA Cache Structure

Member Data Documentation

apr_status_t(* paa_cache_struct::get_agent_response) (const paa_cache *cache, apr_pool_t *pool, const paa_client_request *req, const paa_agent_response **output)

Attempts to retrieve an agent response for the specified request from the cache

Parameters
cachethe cache handle
poolthe pool used to allocate temporary data
reqthe client request handle
outputthe agent response populated on output – this is a local copy and can be modified by the calling thread. Will be populated on a cache hit.
Returns
APR_PAA_CACHE_HIT_CONSULT on hit of consult resource, agent response populated
APR_PAA_CACHE_HIT_UNPROTECTED on hit of unprotected resource, agent response populated
APR_PAA_CACHE_HIT_PROTECTED on hit of protected resource, agent response populated
APR_PAA_CACHE_RESOURCE_MISS on resource cache definition miss, output will not be populated
APR_PAA_CACHE_TOKEN_MISS on token cache miss, output will not be populated
APR_PAA_CACHE_EXPIRED_MISS the resource cache or token cache entry has expired output will not be populated
APR_PAA_CACHE_INVALID_MISS an aspect of the paa_client_request was malformed, resulting in a cache miss. However, new resource cache entries should not be requested to avoid performance degradation introduced by invalid requests.
APR_PAA_CACHE_NA when the cache is no longer available due to a previous system error, output will not be populated
other on failure
void* paa_cache_struct::impl

opaque implementation handle

apr_status_t(* paa_cache_struct::invalidate_scope) (const paa_cache *cache, apr_pool_t *request_pool, const char *scope)

Invalidates all cache entries for the specified scope.

Parameters
cachethe cache handle
request_poolthe pool in which to allocate request-scoped memory
scopethe scope in the cache that should be invalidated.
Returns
APR_SUCCESS if the cache entries were invalidated successfully
APR_PAA_CACHE_NA when the cache is no longer available due to a previous system error
other on failure. Further calls to this function in this scenario would result in APR_PAA_CACHE_NA.
See also
paa_client_request::get_scope
apr_status_t(* paa_cache_struct::put_agent_response) (const paa_cache *cache, apr_pool_t *pool, const paa_client_request *req, const paa_agent_response *agent_resp)

Update the cache entry for the associated request with the specified agent response

Parameters
cachethe cache handle
poolthe pool used to allocate temporary data
reqthe client request handle
agent_respthe agent response
Returns
APR_SUCCESS on success
APR_PAA_CACHE_NA when the cache is no longer available due to a previous system error
other on failure

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