axis2_desc.h

00001 /*
00002 * Licensed to the Apache Software Foundation (ASF) under one or more
00003 * contributor license agreements.  See the NOTICE file distributed with
00004 * this work for additional information regarding copyright ownership.
00005 * The ASF licenses this file to You under the Apache License, Version 2.0
00006 * (the "License"); you may not use this file except in compliance with
00007 * the License.  You may obtain a copy of the License at
00008 *
00009 *      http://www.apache.org/licenses/LICENSE-2.0
00010 *
00011 * Unless required by applicable law or agreed to in writing, software
00012 * distributed under the License is distributed on an "AS IS" BASIS,
00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014 * See the License for the specific language governing permissions and
00015 * limitations under the License.
00016 */
00017 
00018 #ifndef AXIS2_DESC_H
00019 #define AXIS2_DESC_H
00020 
00029 #include <axutil_param_container.h>
00030 #include <axutil_hash.h>
00031 #include <axis2_description.h>
00032 
00033 #ifdef __cplusplus
00034 extern "C"
00035 {
00036 #endif
00037 
00039     typedef struct axis2_desc axis2_desc_t;
00040 
00046     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00047     axis2_desc_create (const axutil_env_t *env);
00048 
00055     AXIS2_EXTERN void AXIS2_CALL
00056     axis2_desc_free(axis2_desc_t *desc,
00057         const axutil_env_t *env);
00058 
00066     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00067     axis2_desc_add_param(axis2_desc_t *desc,
00068         const axutil_env_t *env,
00069         axutil_param_t *param);
00070 
00078     AXIS2_EXTERN axutil_param_t *AXIS2_CALL
00079     axis2_desc_get_param(const axis2_desc_t *desc,
00080         const axutil_env_t *env,
00081         const axis2_char_t *param_name);
00082 
00089     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00090     axis2_desc_get_all_params(const axis2_desc_t *desc,
00091         const axutil_env_t *env);
00092 
00100     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00101     axis2_desc_is_param_locked(const axis2_desc_t *desc,
00102         const axutil_env_t *env,
00103         const axis2_char_t *param_name);
00104 
00116     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00117     axis2_desc_add_child(const axis2_desc_t *desc,
00118         const axutil_env_t *env,
00119         const axis2_char_t *key,
00120         const void *child);
00121 
00128     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00129     axis2_desc_get_all_children(const axis2_desc_t *desc,
00130         const axutil_env_t *env);
00131 
00140     AXIS2_EXTERN void *AXIS2_CALL
00141     axis2_desc_get_child(const axis2_desc_t *desc,
00142         const axutil_env_t *env,
00143         const axis2_char_t *key);
00144 
00152     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00153     axis2_desc_remove_child(const axis2_desc_t *desc,
00154         const axutil_env_t *env,
00155         const axis2_char_t *key);
00156     
00158 #ifdef __cplusplus
00159 }
00160 #endif
00161 #endif  /* AXIS2_DESC_H */

Generated on Thu May 3 12:31:01 2007 for Axis2/C by  doxygen 1.4.6