axiom_namespace.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 AXIOM_NAMESPACE_H
00020 #define AXIOM_NAMESPACE_H
00021 
00022 #include <axutil_utils_defines.h>
00023 #include <axutil_env.h>
00024 #include <axiom_output.h>
00025 #include <axutil_string.h>
00026 
00027 #ifdef __cplusplus
00028 extern "C"
00029 {
00030 #endif
00031 
00038     typedef struct axiom_namespace axiom_namespace_t;
00039 
00046     AXIS2_EXTERN axiom_namespace_t *AXIS2_CALL
00047     axiom_namespace_create(
00048         const axutil_env_t * env,
00049         const axis2_char_t * uri,
00050         const axis2_char_t * prefix);
00051 
00058     AXIS2_EXTERN void AXIS2_CALL
00059     axiom_namespace_free(
00060         struct axiom_namespace *om_namespace,
00061         const axutil_env_t * env);
00062 
00070     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00071     axiom_namespace_equals(
00072         struct axiom_namespace *om_namespace,
00073         const axutil_env_t * env,
00074         struct axiom_namespace *om_namespace1);
00075 
00083     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00084     axiom_namespace_serialize(
00085         struct axiom_namespace *om_namespace,
00086         const axutil_env_t * env,
00087         axiom_output_t * om_output);
00088 
00094     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00095     axiom_namespace_get_uri(
00096         struct axiom_namespace *om_namespace,
00097         const axutil_env_t * env);
00098 
00104     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00105     axiom_namespace_get_prefix(
00106         struct axiom_namespace *om_namespace,
00107         const axutil_env_t * env);
00108 
00115     AXIS2_EXTERN struct axiom_namespace *AXIS2_CALL
00116                 axiom_namespace_clone(
00117                     struct axiom_namespace *om_namespace,
00118                     const axutil_env_t * env);
00119 
00128     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00129     axiom_namespace_to_string(
00130         struct axiom_namespace *om_namespace,
00131         const axutil_env_t * env);
00132 
00133     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00134     axiom_namespace_increment_ref(
00135         struct axiom_namespace *om_namespace,
00136         const axutil_env_t * env);
00137 
00138     AXIS2_EXTERN axiom_namespace_t *AXIS2_CALL
00139     axiom_namespace_create_str(
00140         const axutil_env_t * env,
00141         axutil_string_t * uri,
00142         axutil_string_t * prefix);
00143 
00144     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00145     axiom_namespace_set_uri_str(
00146         axiom_namespace_t * om_namespace,
00147         const axutil_env_t * env,
00148         axutil_string_t * uri);
00149 
00150     AXIS2_EXTERN axutil_string_t *AXIS2_CALL
00151     axiom_namespace_get_uri_str(
00152         axiom_namespace_t * om_namespace,
00153         const axutil_env_t * env);
00154 
00155     AXIS2_EXTERN axutil_string_t *AXIS2_CALL
00156     axiom_namespace_get_prefix_str(
00157         axiom_namespace_t * om_namespace,
00158         const axutil_env_t * env);
00159 
00162 #ifdef __cplusplus
00163 }
00164 #endif
00165 
00166 #endif                          /* AXIOM_NAMESPACE */

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