cache_storage.h revision 7d84798eed7ad93b66b88841974525641749a9b1
f86a86eea994dc0d186331bec991eed99d108056minfrin/* Licensed to the Apache Software Foundation (ASF) under one or more
f86a86eea994dc0d186331bec991eed99d108056minfrin * contributor license agreements. See the NOTICE file distributed with
f86a86eea994dc0d186331bec991eed99d108056minfrin * this work for additional information regarding copyright ownership.
f86a86eea994dc0d186331bec991eed99d108056minfrin * The ASF licenses this file to You under the Apache License, Version 2.0
f86a86eea994dc0d186331bec991eed99d108056minfrin * (the "License"); you may not use this file except in compliance with
f86a86eea994dc0d186331bec991eed99d108056minfrin * the License. You may obtain a copy of the License at
f86a86eea994dc0d186331bec991eed99d108056minfrin * Unless required by applicable law or agreed to in writing, software
f86a86eea994dc0d186331bec991eed99d108056minfrin * distributed under the License is distributed on an "AS IS" BASIS,
f86a86eea994dc0d186331bec991eed99d108056minfrin * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
f86a86eea994dc0d186331bec991eed99d108056minfrin * See the License for the specific language governing permissions and
f86a86eea994dc0d186331bec991eed99d108056minfrin * limitations under the License.
f86a86eea994dc0d186331bec991eed99d108056minfrin * @brief Cache Storage Functions
f86a86eea994dc0d186331bec991eed99d108056minfrin * @defgroup Cache_storage Cache Storage Functions
f86a86eea994dc0d186331bec991eed99d108056minfrin * @ingroup MOD_CACHE
f86a86eea994dc0d186331bec991eed99d108056minfrinextern "C" {
587909d32387845b4470c84c025638375c031bcaminfrinint cache_remove_url(cache_request_rec *cache, request_rec *r);
34f6b45d02039cb734332bc1cecf16c1dcd8f2a5minfrinint cache_create_entity(cache_request_rec *cache, request_rec *r,
34f6b45d02039cb734332bc1cecf16c1dcd8f2a5minfrinint cache_select(cache_request_rec *cache, request_rec *r);
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * invalidate a specific URL entity in all caches
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * All cached entities for this URL are removed, usually in
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * response to a POST/PUT or DELETE.
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * This function returns OK if at least one entity was found and
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * removed, and DECLINED if no cached entities were removed.
7d84798eed7ad93b66b88841974525641749a9b1trawick * @param cache cache_request_rec
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin * @param r request_rec
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrinint cache_invalidate(cache_request_rec *cache, request_rec *r);
528d669867298f6743187e798121893290135fd8minfrinapr_status_t cache_generate_key_default(request_rec *r, apr_pool_t* p,
528d669867298f6743187e798121893290135fd8minfrin const char **key);
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrin * Merge in cached headers into the response
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrin * @param h cache_handle_t
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrin * @param r request_rec
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrin * @param preserve_orig If 1, the values in r->headers_out are preserved.
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrin * Otherwise, they are overwritten by the cached value.
561ff82c9a4873234adbd99ddd5bbfdd2466ac53minfrinvoid cache_accept_headers(cache_handle_t *h, request_rec *r,
f86a86eea994dc0d186331bec991eed99d108056minfrin#endif /* !CACHE_STORAGE_H */