home *** CD-ROM | disk | FTP | other *** search
/ Cricao de Sites - 650 Layouts Prontos / WebMasters.iso / Servidores / apache_2.2.8-win32-x86-no_ssl.msi / Data1.cab / _547794FD4329AE58FF5D1E8C47D9D034 < prev    next >
Text File  |  2007-05-09  |  3KB  |  87 lines

  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. /** @} */
  87.