axis2_desc.h

00001 
00002 /*
00003 * Licensed to the Apache Software Foundation (ASF) under one or more
00004 * contributor license agreements.  See the NOTICE file distributed with
00005 * this work for additional information regarding copyright ownership.
00006 * The ASF licenses this file to You under the Apache License, Version 2.0
00007 * (the "License"); you may not use this file except in compliance with
00008 * the License.  You may obtain a copy of the License at
00009 *
00010 *      http://www.apache.org/licenses/LICENSE-2.0
00011 *
00012 * Unless required by applicable law or agreed to in writing, software
00013 * distributed under the License is distributed on an "AS IS" BASIS,
00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015 * See the License for the specific language governing permissions and
00016 * limitations under the License.
00017 */
00018 
00019 #ifndef AXIS2_DESC_H
00020 #define AXIS2_DESC_H
00021 
00030 #include <axutil_param_container.h>
00031 #include <axutil_hash.h>
00032 #include <axis2_description.h>
00033 
00034 #ifdef __cplusplus
00035 extern "C"
00036 {
00037 #endif
00038 
00040     typedef struct axis2_desc axis2_desc_t;
00041 
00042     struct axis2_policy_include;
00043 
00049     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00050     axis2_desc_create(
00051         const axutil_env_t * env);
00052 
00059     AXIS2_EXTERN void AXIS2_CALL
00060     axis2_desc_free(
00061         axis2_desc_t * desc,
00062         const axutil_env_t * env);
00063 
00071     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00072     axis2_desc_add_param(
00073         axis2_desc_t * desc,
00074         const axutil_env_t * env,
00075         axutil_param_t * param);
00076 
00084     AXIS2_EXTERN axutil_param_t *AXIS2_CALL
00085     axis2_desc_get_param(
00086         const axis2_desc_t * desc,
00087         const axutil_env_t * env,
00088         const axis2_char_t * param_name);
00089 
00096     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00097     axis2_desc_get_all_params(
00098         const axis2_desc_t * desc,
00099         const axutil_env_t * env);
00100 
00108     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00109     axis2_desc_is_param_locked(
00110         const axis2_desc_t * desc,
00111         const axutil_env_t * env,
00112         const axis2_char_t * param_name);
00113 
00125     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00126     axis2_desc_add_child(
00127         const axis2_desc_t * desc,
00128         const axutil_env_t * env,
00129         const axis2_char_t * key,
00130         const void *child);
00131 
00138     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00139     axis2_desc_get_all_children(
00140         const axis2_desc_t * desc,
00141         const axutil_env_t * env);
00142 
00151     AXIS2_EXTERN void *AXIS2_CALL
00152     axis2_desc_get_child(
00153         const axis2_desc_t * desc,
00154         const axutil_env_t * env,
00155         const axis2_char_t * key);
00156 
00164     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00165     axis2_desc_remove_child(
00166         const axis2_desc_t * desc,
00167         const axutil_env_t * env,
00168         const axis2_char_t * key);
00169 
00177     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00178     axis2_desc_set_parent(
00179         axis2_desc_t * desc,
00180         const axutil_env_t * env,
00181         axis2_desc_t * parent);
00182 
00189     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00190     axis2_desc_get_parent(
00191         const axis2_desc_t * desc,
00192         const axutil_env_t * env);
00193 
00194     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00195     axis2_desc_set_policy_include(
00196         axis2_desc_t * desc,
00197         const axutil_env_t * env,
00198         struct axis2_policy_include *policy_include);
00199 
00200     AXIS2_EXTERN struct axis2_policy_include *AXIS2_CALL
00201 
00202                 axis2_desc_get_policy_include(
00203                     axis2_desc_t * desc,
00204                     const axutil_env_t * env);
00205 
00207 #ifdef __cplusplus
00208 }
00209 #endif
00210 #endif                          /* AXIS2_DESC_H */

Generated on Tue Jan 8 01:23:15 2008 for Axis2/C by  doxygen 1.5.1