summaryrefslogtreecommitdiffstats
path: root/include/axis2_transport_receiver.h
diff options
context:
space:
mode:
authorGravatar gmcdonald2010-02-13 01:32:03 +0000
committerGravatar gmcdonald2010-02-13 01:32:03 +0000
commit0425aadc78680e53000fd0108b540d6eca048516 (patch)
tree8ec7ab8e015d454c5ec586dfc91e05a2dce1cfc0 /include/axis2_transport_receiver.h
downloadaxis2c-0425aadc78680e53000fd0108b540d6eca048516.tar.gz
axis2c-0425aadc78680e53000fd0108b540d6eca048516.tar.bz2
Moving axis svn, part of TLP move INFRA-2441
git-svn-id: http://svn.apache.org/repos/asf/axis/axis2/c/core/trunk@909681 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include/axis2_transport_receiver.h')
-rw-r--r--include/axis2_transport_receiver.h256
1 files changed, 256 insertions, 0 deletions
diff --git a/include/axis2_transport_receiver.h b/include/axis2_transport_receiver.h
new file mode 100644
index 0000000..7af1973
--- /dev/null
+++ b/include/axis2_transport_receiver.h
@@ -0,0 +1,256 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_TRANSPORT_RECEIVER_H
+#define AXIS2_TRANSPORT_RECEIVER_H
+
+/**
+ * @defgroup axis2_transport transport
+ * @ingroup axis2
+ * @{
+ * @}
+ */
+
+/** @defgroup axis2_transport_receiver transport receiver
+ * @ingroup axis2_transport
+ * Description.
+ * @{
+ */
+
+/**
+ * @file axis2_transport_receiver.h
+ * @brief Axis2 description transport receiver interface
+ */
+
+ #include <axis2_const.h>
+ #include <axutil_error.h>
+ #include <axis2_defines.h>
+ #include <axutil_env.h>
+ #include <axutil_allocator.h>
+ #include <axis2_endpoint_ref.h>
+ #include <axis2_ctx.h>
+ #include <axis2_conf_ctx.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+ struct axis2_conf_ctx;
+ struct axis2_transport_in_desc;
+
+ /** Type name for axis2_transport_receiver */
+ typedef struct axis2_transport_receiver axis2_transport_receiver_t;
+
+ /** Type name for axis2_transport_receiver_ops */
+ typedef struct axis2_transport_receiver_ops axis2_transport_receiver_ops_t;
+
+ /**
+ * @brief Description Transport Receiver ops struct
+ * Encapsulator struct for ops of axis2_transport_receiver
+ */
+ struct axis2_transport_receiver_ops
+ {
+
+ /**
+ * @param transport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ * @param conf_ctx pointer to configuration context
+ * @param intrasport_in pointer to transport_in
+ */
+ axis2_status_t(AXIS2_CALL * init)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ struct axis2_conf_ctx * conf_ctx,
+ struct axis2_transport_in_desc * transport_in);
+
+ /**
+ * @param transport_receiver
+ * @param env pointer to environment struct
+ */
+ axis2_status_t(AXIS2_CALL * start)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /**
+ * @param tranport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ * @param svc_name pointer to service name
+ */
+ axis2_endpoint_ref_t *(AXIS2_CALL * get_reply_to_epr)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ const axis2_char_t * svc_name);
+
+ /**
+ * @param tranport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ * @param svc_name pointer to service name
+ */
+ axis2_endpoint_ref_t *(AXIS2_CALL * get_epr_for_service)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ const axis2_char_t * svc_name);
+
+ /**
+ * @param tranport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ * @param svc_name pointer to service name
+ */
+ axis2_char_t *(AXIS2_CALL * get_server_ip)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /**
+ * @param tranport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ * @param svc_name pointer to service name
+ */
+ void (AXIS2_CALL * set_server_ip)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ axis2_char_t * ip);
+
+ /**
+ * @param server pointer to server
+ * @param env pointer to environment struct
+ */
+ struct axis2_conf_ctx *(AXIS2_CALL * get_conf_ctx)(
+ axis2_transport_receiver_t * server,
+ const axutil_env_t * env);
+
+ /**
+ * @param server pointer to server
+ * @param env pointer to environment struct
+ */
+ axis2_bool_t(AXIS2_CALL * is_running)(
+ axis2_transport_receiver_t * server,
+ const axutil_env_t * env);
+
+ void(AXIS2_CALL * set_is_application_client_side)(
+ axis2_transport_receiver_t * server,
+ const axutil_env_t * env,
+ axis2_bool_t is_application_client_side);
+
+ /**
+ * @param transport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ */
+ axis2_status_t(AXIS2_CALL * stop)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /**
+ * De-allocate memory
+ * @param transport_receiver pointer to transport receiver
+ * @param env pointer to environment struct
+ */
+ void(AXIS2_CALL * free)(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ };
+
+ /**
+ * @brief Transport Receiver struct
+ */
+ struct axis2_transport_receiver
+ {
+ const axis2_transport_receiver_ops_t *ops;
+ };
+
+ /** Frees the transport receiver.
+ @sa axis2_transport_receiver#free */
+ AXIS2_EXTERN void AXIS2_CALL
+ axis2_transport_receiver_free(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /** Initialize the transport receiver.
+ @sa axis2_transport_receiver#init */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_transport_receiver_init(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ struct axis2_conf_ctx *conf_ctx,
+ struct axis2_transport_in_desc *transport_in);
+
+ /** Start
+ @sa axis2_transport_receiver#start */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_transport_receiver_start(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /** Stop.
+ @sa axis2_transport_receiver#stop */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_transport_receiver_stop(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /** Get reply to epr.
+ @sa axis2_transport_receiver#get_reply_to_epr */
+ AXIS2_EXTERN axis2_endpoint_ref_t *AXIS2_CALL
+ axis2_transport_receiver_get_reply_to_epr(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ const axis2_char_t * svc_name);
+
+ /** Get conf ctx.
+ @sa axis2_transport_receiver#get_conf_ctx */
+ AXIS2_EXTERN struct axis2_conf_ctx *AXIS2_CALL
+ axis2_transport_receiver_get_conf_ctx(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ /** Is running.
+ @sa axis2_transport_receiver#is_running */
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_transport_receiver_is_running(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN void AXIS2_CALL
+ axis2_transport_receiver_set_is_application_client_side(
+ axis2_transport_receiver_t * transport_receiver,
+ const axutil_env_t * env,
+ axis2_bool_t is_application_client_side);
+
+ AXIS2_EXTERN axis2_endpoint_ref_t* AXIS2_CALL
+ axis2_transport_receiver_get_epr_for_service(axis2_transport_receiver_t *transport_receiver,
+ const axutil_env_t *env,
+ const axis2_char_t *svc_name);
+
+ AXIS2_EXTERN axis2_char_t* AXIS2_CALL
+ axis2_transport_receiver_get_server_ip(
+ axis2_transport_receiver_t *transport_receiver,
+ const axutil_env_t *env);
+
+ AXIS2_EXTERN void AXIS2_CALL
+ axis2_transport_receiver_set_server_ip(
+ axis2_transport_receiver_t *transport_receiver,
+ const axutil_env_t *env,
+ axis2_char_t *serverip);
+
+ /** @} */
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* AXIS2_TRANSPORT_RECEIVER_H */