Annotation of win32/apache22/include/ap_provider.h, revision 1.1
1.1 ! moko 1: /* Licensed to the Apache Software Foundation (ASF) under one or more
! 2: * contributor license agreements. See the NOTICE file distributed with
! 3: * this work for additional information regarding copyright ownership.
! 4: * The ASF licenses this file to You under the Apache License, Version 2.0
! 5: * (the "License"); you may not use this file except in compliance with
! 6: * the License. You may obtain a copy of the License at
! 7: *
! 8: * http://www.apache.org/licenses/LICENSE-2.0
! 9: *
! 10: * Unless required by applicable law or agreed to in writing, software
! 11: * distributed under the License is distributed on an "AS IS" BASIS,
! 12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
! 13: * See the License for the specific language governing permissions and
! 14: * limitations under the License.
! 15: */
! 16:
! 17: /**
! 18: * @file ap_provider.h
! 19: * @brief Apache Provider API
! 20: *
! 21: * @defgroup APACHE_CORE_PROVIDER Provider API
! 22: * @ingroup APACHE_CORE
! 23: * @{
! 24: */
! 25:
! 26: #ifndef AP_PROVIDER_H
! 27: #define AP_PROVIDER_H
! 28:
! 29: #include "ap_config.h"
! 30:
! 31: #ifdef __cplusplus
! 32: extern "C" {
! 33: #endif
! 34:
! 35: typedef struct {
! 36: const char *provider_name;
! 37: } ap_list_provider_names_t;
! 38:
! 39:
! 40: /**
! 41: * This function is used to register a provider with the global
! 42: * provider pool.
! 43: * @param pool The pool to create any storage from
! 44: * @param provider_group The group to store the provider in
! 45: * @param provider_name The name for this provider
! 46: * @param provider_version The version for this provider
! 47: * @param provider Opaque structure for this provider
! 48: * @return APR_SUCCESS if all went well
! 49: */
! 50: AP_DECLARE(apr_status_t) ap_register_provider(apr_pool_t *pool,
! 51: const char *provider_group,
! 52: const char *provider_name,
! 53: const char *provider_version,
! 54: const void *provider);
! 55:
! 56: /**
! 57: * This function is used to retrieve a provider from the global
! 58: * provider pool.
! 59: * @param provider_group The group to look for this provider in
! 60: * @param provider_name The name for the provider
! 61: * @param provider_version The version for the provider
! 62: * @return provider pointer to provider if found, NULL otherwise
! 63: */
! 64: AP_DECLARE(void *) ap_lookup_provider(const char *provider_group,
! 65: const char *provider_name,
! 66: const char *provider_version);
! 67:
! 68: /**
! 69: * This function is used to retrieve a list (array) of provider
! 70: * names from the specified group with the specified version.
! 71: * @param pool The pool to create any storage from
! 72: * @param provider_group The group to look for this provider in
! 73: * @param provider_version The version for the provider
! 74: * @return pointer to array of ap_list_provider_names_t of provider names (could be empty)
! 75: */
! 76:
! 77: AP_DECLARE(apr_array_header_t *) ap_list_provider_names(apr_pool_t *pool,
! 78: const char *provider_group,
! 79: const char *provider_version);
! 80:
! 81: #ifdef __cplusplus
! 82: }
! 83: #endif
! 84:
! 85: #endif
! 86: /** @} */
E-mail: