PingAccess Agent SDK for C
paa-cache.h
Go to the documentation of this file.
1 /*****************************************************
2  * Copyright (C) 2015 Ping Identity Corporation
3  * All rights reserved.
4  *
5  * The contents of this file are the property of Ping Identity Corporation.
6  * You may not copy or use this file, in either source code or executable
7  * form, except in compliance with terms set by Ping Identity Corporation.
8  * For further information please contact:
9  *
10  * Ping Identity Corporation
11  * 1001 17th St Suite 100
12  * Denver, CO 80202
13  * 303.468.2900
14  * http://www.pingidentity.com
15  *
16  ****************************************************/
17 
23 #ifndef _PAA_SDK_PAA_CACHE_H_
24 #define _PAA_SDK_PAA_CACHE_H_ 1
25 
26 #include "apr.h"
27 #include "apr_pools.h"
28 
29 #include "paa-http-server-facade.h"
30 #include "paa-util.h"
31 
33 #define APR_PAA_CACHE_HIT_CONSULT (APR_PAA_CACHE_START + 0)
34 
36 #define APR_PAA_CACHE_HIT_UNPROTECTED (APR_PAA_CACHE_START + 1)
37 
39 #define APR_PAA_CACHE_HIT_PROTECTED (APR_PAA_CACHE_START + 2)
40 
42 #define APR_PAA_CACHE_RESOURCE_MISS (APR_PAA_CACHE_START + 3)
43 
45 #define APR_PAA_CACHE_TOKEN_MISS (APR_PAA_CACHE_START + 4)
46 
48 #define APR_PAA_CACHE_EXPIRED_MISS (APR_PAA_CACHE_START + 5)
49 
51 #define APR_PAA_CACHE_NA (APR_PAA_CACHE_START + 6)
52 
57 #define APR_PAA_CACHE_INVALID_MISS (APR_PAA_CACHE_START + 7)
58 
59 #ifdef __cplusplus
60 extern "C" {
61 #endif
62 
64 typedef struct paa_cache_struct paa_cache;
65 
70 {
72  void *impl;
73 
109  apr_status_t (*get_agent_response)(const paa_cache *cache,
110  apr_pool_t *pool,
111  const paa_client_request *req,
112  const paa_agent_response **output);
113 
128  apr_status_t (*put_agent_response)(const paa_cache *cache,
129  apr_pool_t *pool,
130  const paa_client_request *req,
131  const paa_agent_response *agent_resp);
132 
148  apr_status_t (*invalidate_scope)(const paa_cache *cache,
149  apr_pool_t *request_pool,
150  const char *scope);
151 };
152 
153 #ifdef __cplusplus
154 } /* C */
155 #endif
156 
157 #endif /* _PAA_SDK_PAA_CACHE_H_ */
158 
void * impl
Definition: paa-cache.h:72
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)
Definition: paa-cache.h:128
apr_status_t(* get_agent_response)(const paa_cache *cache, apr_pool_t *pool, const paa_client_request *req, const paa_agent_response **output)
Definition: paa-cache.h:109
apr_status_t(* invalidate_scope)(const paa_cache *cache, apr_pool_t *request_pool, const char *scope)
Definition: paa-cache.h:148
Definition: paa-http-server-facade.h:92
Definition: paa-cache.h:69
struct paa_agent_response_struct paa_agent_response
Definition: paa-http-server-facade.h:48