axis2_endpoint_ref.h

Go to the documentation of this file.
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_ENDPOINT_REF_H
00020 #define AXIS2_ENDPOINT_REF_H
00021 
00037 #include <axis2_defines.h>
00038 #include <axutil_env.h>
00039 #include <axis2_const.h>
00040 #include <axutil_array_list.h>
00041 #include <axis2_any_content_type.h>
00042 #include <axis2_svc_name.h>
00043 #include <axiom_node.h>
00044 #include <axiom_attribute.h>
00045 
00046 #ifdef __cplusplus
00047 extern "C"
00048 {
00049 #endif
00050 
00052     typedef struct axis2_endpoint_ref axis2_endpoint_ref_t;
00053 
00060     AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
00061     axis2_endpoint_ref_create(
00062         const axutil_env_t * env,
00063         const axis2_char_t * address);
00064 
00072     void AXIS2_CALL
00073     axis2_endpoint_ref_free_void_arg(
00074         void *endpoint_ref,
00075         const axutil_env_t * env);
00076 
00084     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
00085 
00086     axis2_endpoint_ref_get_address(
00087         const axis2_endpoint_ref_t * endpoint_ref,
00088         const axutil_env_t * env);
00089 
00098     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00099     axis2_endpoint_ref_set_address(
00100         axis2_endpoint_ref_t * endpoint_ref,
00101         const axutil_env_t * env,
00102         const axis2_char_t * address);
00103 
00112     AXIS2_EXTERN const axutil_qname_t *AXIS2_CALL
00113 
00114     axis2_endpoint_ref_get_interface_qname(
00115         const axis2_endpoint_ref_t * endpoint_ref,
00116         const axutil_env_t * env);
00117 
00127     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00128 
00129     axis2_endpoint_ref_set_interface_qname(
00130         axis2_endpoint_ref_t * endpoint_ref,
00131         const axutil_env_t * env,
00132         const axutil_qname_t * interface_qname);
00133 
00145     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00146 
00147     axis2_endpoint_ref_get_ref_param_list(
00148         const axis2_endpoint_ref_t * endpoint_ref,
00149         const axutil_env_t * env);
00150 
00159     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00160 
00161     axis2_endpoint_ref_get_metadata_list(
00162         const axis2_endpoint_ref_t * endpoint_ref,
00163         const axutil_env_t * env);
00164 
00172     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00173 
00174     axis2_endpoint_ref_get_ref_attribute_list(
00175         const axis2_endpoint_ref_t * endpoint_ref,
00176         const axutil_env_t * env);
00177 
00185     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00186 
00187     axis2_endpoint_ref_get_metadata_attribute_list(
00188         const axis2_endpoint_ref_t * endpoint_ref,
00189         const axutil_env_t * env);
00190 
00199     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00200 
00201     axis2_endpoint_ref_get_extension_list(
00202         const axis2_endpoint_ref_t * endpoint_ref,
00203         const axutil_env_t * env);
00204 
00214     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00215     axis2_endpoint_ref_add_ref_param(
00216         axis2_endpoint_ref_t * endpoint_ref,
00217         const axutil_env_t * env,
00218         axiom_node_t * ref_param_node);
00219 
00230     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00231     axis2_endpoint_ref_add_metadata(
00232         axis2_endpoint_ref_t * endpoint_ref,
00233         const axutil_env_t * env,
00234         axiom_node_t * metadata_node);
00235 
00244     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00245 
00246     axis2_endpoint_ref_add_ref_attribute(
00247         axis2_endpoint_ref_t * endpoint_ref,
00248         const axutil_env_t * env,
00249         axiom_attribute_t * attr);
00250 
00259     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00260 
00261     axis2_endpoint_ref_add_metadata_attribute(
00262         axis2_endpoint_ref_t * endpoint_ref,
00263         const axutil_env_t * env,
00264         axiom_attribute_t * attr);
00265 
00274     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00275     axis2_endpoint_ref_add_extension(
00276         axis2_endpoint_ref_t * endpoint_ref,
00277         const axutil_env_t * env,
00278         axiom_node_t * extension_node);
00279 
00290     AXIS2_EXTERN axis2_svc_name_t *AXIS2_CALL
00291 
00292     axis2_endpoint_ref_get_svc_name(
00293         const axis2_endpoint_ref_t * endpoint_ref,
00294         const axutil_env_t * env);
00295 
00307     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00308     axis2_endpoint_ref_set_svc_name(
00309         axis2_endpoint_ref_t * endpoint_ref,
00310         const axutil_env_t * env,
00311         axis2_svc_name_t * svc_name);
00312 
00319     AXIS2_EXTERN void AXIS2_CALL
00320     axis2_endpoint_ref_free(
00321         axis2_endpoint_ref_t * endpoint_ref,
00322         const axutil_env_t * env);
00323 
00326 #ifdef __cplusplus
00327 }
00328 #endif
00329 
00330 #endif                          /* AXIS2_ENDPOINT_REF_H */

Generated on Wed Jan 2 17:42:50 2008 for Axis2/C by  doxygen 1.5.1