| /* Licensed to the Apache Software Foundation (ASF) under one or more | |
| * contributor license agreements. See the NOTICE file distributed with | |
| * this work for additional information regarding copyright ownership. | |
| * The ASF licenses this file to You under the Apache License, Version 2.0 | |
| * (the "License"); you may not use this file except in compliance with | |
| * the License. You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software | |
| * distributed under the License is distributed on an "AS IS" BASIS, | |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| * See the License for the specific language governing permissions and | |
| * limitations under the License. | |
| */ | |
| /** | |
| * @file cache_storage.h | |
| * @brief Cache Storage Functions | |
| * | |
| * @defgroup Cache_storage Cache Storage Functions | |
| * @ingroup MOD_CACHE | |
| * @{ | |
| */ | |
| #ifndef CACHE_STORAGE_H | |
| #define CACHE_STORAGE_H | |
| #ifdef __cplusplus | |
| extern "C" { | |
| #endif | |
| #include "mod_cache.h" | |
| #include "cache_util.h" | |
| /** | |
| * cache_storage.c | |
| */ | |
| int cache_remove_url(cache_request_rec *cache, request_rec *r); | |
| int cache_create_entity(cache_request_rec *cache, request_rec *r, | |
| apr_off_t size, apr_bucket_brigade *in); | |
| int cache_select(cache_request_rec *cache, request_rec *r); | |
| /** | |
| * invalidate a specific URL entity in all caches | |
| * | |
| * All cached entities for this URL are removed, usually in | |
| * response to a POST/PUT or DELETE. | |
| * | |
| * This function returns OK if at least one entity was found and | |
| * removed, and DECLINED if no cached entities were removed. | |
| * @param cache cache_request_rec | |
| * @param r request_rec | |
| */ | |
| int cache_invalidate(cache_request_rec *cache, request_rec *r); | |
| apr_status_t cache_generate_key_default(request_rec *r, apr_pool_t* p, | |
| const char **key); | |
| /** | |
| * Merge in cached headers into the response | |
| * @param h cache_handle_t | |
| * @param r request_rec | |
| * @param top headers to be applied | |
| * @param bottom headers to be overwritten | |
| * @param revalidation true if revalidation is taking place | |
| */ | |
| void cache_accept_headers(cache_handle_t *h, request_rec *r, apr_table_t *top, | |
| apr_table_t *bottom, int revalidation); | |
| #ifdef __cplusplus | |
| } | |
| #endif | |
| #endif /* !CACHE_STORAGE_H */ | |
| /** @} */ |