You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2005/11/07 03:23:40 UTC

svn commit: r331178 [1/2] - in /webservices/axis2/trunk/c: ides/anjuta/ include/ modules/core/description/src/ modules/core/engine/src/

Author: damitha
Date: Sun Nov  6 18:23:20 2005
New Revision: 331178

URL: http://svn.apache.org/viewcvs?rev=331178&view=rev
Log:
Changes due to name changes. Still not complete

Modified:
    webservices/axis2/trunk/c/ides/anjuta/axis2c.prj
    webservices/axis2/trunk/c/include/axis2.h
    webservices/axis2/trunk/c/include/axis2_core.h
    webservices/axis2/trunk/c/include/axis2_engine_config.h
    webservices/axis2/trunk/c/include/axis2_msg_recv.h
    webservices/axis2/trunk/c/include/axis2_operation.h
    webservices/axis2/trunk/c/include/axis2_param_container.h
    webservices/axis2/trunk/c/include/axis2_svc.h
    webservices/axis2/trunk/c/include/axis2_svc_grp.h
    webservices/axis2/trunk/c/modules/core/description/src/operation.c
    webservices/axis2/trunk/c/modules/core/description/src/param_container.c
    webservices/axis2/trunk/c/modules/core/description/src/svc.c
    webservices/axis2/trunk/c/modules/core/description/src/svc_grp.c
    webservices/axis2/trunk/c/modules/core/engine/src/engine_config.c
    webservices/axis2/trunk/c/modules/core/engine/src/msg_recv.c

Modified: webservices/axis2/trunk/c/ides/anjuta/axis2c.prj
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/ides/anjuta/axis2c.prj?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/ides/anjuta/axis2c.prj (original)
+++ webservices/axis2/trunk/c/ides/anjuta/axis2c.prj Sun Nov  6 18:23:20 2005
@@ -113,7 +113,6 @@
 	include/axis2_handler.h\
 	include/axis2_module.h\
 	include/axis2_operation.h\
-	include/axis2_service.h\
 	include/axis2_wsdl_component.h\
 	include/axis2_engine_config.h\
 	include/axis2_env.h\

Modified: webservices/axis2/trunk/c/include/axis2.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2.h (original)
+++ webservices/axis2/trunk/c/include/axis2.h Sun Nov  6 18:23:20 2005
@@ -10,6 +10,16 @@
 #include <stdio.h>
 #include <axis2_env.h>
 
+/** This macro is called to check whether structure on which function is called
+ *  is NULL and to check whether the environment structure passed is valid.
+ * @param object structure on which function is called
+ * @param env environment to be checked for validity
+ * @param error_return If function return a status it should pass here 
+ *        AXIS2_FAILURE. If function return a type pointer it should
+ *        pass NULL
+ * @return If function return a status code return AXIS2_SUCCESS. Else if
+ *         function return a type pointer return NULL
+ */
 #define AXIS2_FUNC_PARAM_CHECK(object, env, error_return) \
     AXIS2_ENV_CHECK(env, error_return);\
     if (!object) \
@@ -17,11 +27,47 @@
         AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_INVALID_NULL_PARAM); \
         AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE); \
         return error_return; \
-    }\
+    } \
     else \
     { \
         AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_SUCCESS); \
     }
+ 
+/**This macro is called to check whether an object is NULL.
+ * if object is NULL error number and status code is set
+ * @param object object to be check for NULL
+ * @param error_return If function return a status it should pass here 
+ *        AXIS2_FAILURE. If function return a type pointer it should
+ *        pass NULL
+ * @return If function return a status code return AXIS2_SUCCESS. Else if
+ *         function return a type pointer return NULL
+ */
+#define AXIS2_PARAM_CHECK(env, object, error_return) \
+    if (!object) \
+    { \
+        AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_INVALID_NULL_PARAM); \
+        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE); \
+        return error_return; \
+    } \
+    else \
+    { \
+        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_SUCCESS); \
+    } 
+
+/**This macro is used to handle error situation. 
+ * @param error_number Error number for the error occured
+ * @param error_return If function return a status it should pass here 
+ *        AXIS2_FAILURE. If function return a type pointer it should
+ *        pass NULL
+ * @return If function return a status code return AXIS2_SUCCESS. Else if
+ *         function return a type pointer return NULL
+ */    
+#define AXIS2_ERROR_HANDLE(env, error_number, error_return) \
+    { \
+        AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_INVALID_NULL_PARAM); \
+        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE); \
+        return error_return; \
+    }      
 
 #ifdef __cplusplus
 extern "C"

Modified: webservices/axis2/trunk/c/include/axis2_core.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_core.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_core.h (original)
+++ webservices/axis2/trunk/c/include/axis2_core.h Sun Nov  6 18:23:20 2005
@@ -81,27 +81,27 @@
 
 /** @cond */
 struct axis2_operation_s;
-struct axis2_description_operation_ops_s;
+struct axis2_operation_ops_s;
 /** @endcond */
-typedef struct axis2_operation_s axis2_description_operation_t;
-typedef struct axis2_description_operation_ops_s 
-		axis2_description_operation_ops_t;
+typedef struct axis2_operation_s axis2_operation_t;
+typedef struct axis2_operation_ops_s 
+		axis2_operation_ops_t;
 
 
 /** @cond */
-struct axis2_description_service_s;
-struct axis2_description_service_ops_s;
+struct axis2_svc_s;
+struct axis2_svc_ops_s;
 /** @endcond */
-typedef struct axis2_description_service_s axis2_description_service_t;
-typedef struct axis2_description_service_ops_s 
-		axis2_description_service_ops_t;
+typedef struct axis2_svc_s axis2_svc_t;
+typedef struct axis2_svc_ops_s 
+		axis2_svc_ops_t;
 
 
 /** @cond */
 struct axis2_description_servicegroup_s;
 struct axis2_description_servicegroup_ops_s;
 /** @endcond */	
-typedef struct axis2_description_servicegroup_s axis2_description_servicegroup_t;
+typedef struct axis2_description_servicegroup_s axis2_svc_grp_t;
 typedef struct axis2_description_servicegroup_ops_s 
 		axis2_description_servicegroup_ops_t;
 
@@ -114,11 +114,11 @@
 typedef struct axis2_context_msg_ctx_ops_s axis2_context_msg_ctx_ops_t;
 	
 /** @cond */
-struct axis2_engine_msg_receiver_s;
-struct axis2_engine_msg_receiver_ops_s;
+struct axis2_engine_msg_recv_s;
+struct axis2_engine_msg_recv_ops_s;
 /** @endcond */
-typedef struct axis2_engine_msg_receiver_s axis2_engine_msg_receiver_t;
-typedef struct axis2_engine_msg_receiver_ops_s axis2_engine_msg_receiver_ops_t;
+typedef struct axis2_engine_msg_recv_s axis2_msg_recv_t;
+typedef struct axis2_engine_msg_recv_ops_s axis2_engine_msg_recv_ops_t;
 	
 /** @cond */
 struct axis2_engine_config_s;

Modified: webservices/axis2/trunk/c/include/axis2_engine_config.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_engine_config.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_engine_config.h (original)
+++ webservices/axis2/trunk/c/include/axis2_engine_config.h Sun Nov  6 18:23:20 2005
@@ -77,17 +77,17 @@
 		
 typedef axis2_status_t (*axis2_engine_config_add_service_group_t)
 		(axis2_engine_config_t *engine_config, axis2_env_t *env
-    	, axis2_description_servicegroup_t *service_group_desc);
+    	, axis2_svc_grp_t *service_group_desc);
 		
-typedef axis2_description_servicegroup_t *(*axis2_engine_config_get_service_group_t)
+typedef axis2_svc_grp_t *(*axis2_engine_config_get_service_group_t)
 		(axis2_engine_config_t *engine_config, axis2_env_t *env
 		, const axis2_char_t *servicegroup_name);
 
 typedef axis2_status_t (*axis2_engine_config_add_service_t)
 		(axis2_engine_config_t *engine_config, axis2_env_t *env
-		, axis2_description_service_t* service_desc);
+		, axis2_svc_t* service_desc);
 		
-typedef axis2_description_service_t *(*axis2_engine_config_get_service_t)
+typedef axis2_svc_t *(*axis2_engine_config_get_service_t)
 		(axis2_engine_config_t *engine_config, axis2_env_t *env
 		, const axis2_char_t* service_name);
 

Modified: webservices/axis2/trunk/c/include/axis2_msg_recv.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_msg_recv.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_msg_recv.h (original)
+++ webservices/axis2/trunk/c/include/axis2_msg_recv.h Sun Nov  6 18:23:20 2005
@@ -20,7 +20,7 @@
 
 /**
   * @file axis2_msg_recv.h
-  * @brief axis2 ENGINE CORE msg_receiver
+  * @brief axis2 ENGINE CORE msg_recv
   */
 
 #include <axis2_core.h>
@@ -38,49 +38,49 @@
 /** @} */
 
 /**
- * @defgroup axis2_engine_msg_receiver ENGINE Msg_receiver
+ * @defgroup axis2_engine_msg_recv ENGINE Msg_receiver
  * @ingroup axis2_engine 
  * @{
  */
 
 /************************** Start of function macros **************************/
 
-#define axis2_engine_msg_receiver_free(env, msg_receiver) \
-		(axis2_engine_msg_receiver_get_ops(env, \
-		msg_receiver)->free (env, msg_receiver));
-
-#define axis2_engine_msg_receiver_receive(env, msg_receiver, msg_ctx) \
-		(axis2_engine_msg_receiver_get_ops(env, \
-		msg_receiver)->receive (env, msg_receiver, msg_ctx));
+#define axis2_engine_msg_recv_free(env, msg_recv) \
+		(axis2_engine_msg_recv_get_ops(env, \
+		msg_recv)->free (env, msg_recv));
+
+#define axis2_engine_msg_recv_receive(env, msg_recv, msg_ctx) \
+		(axis2_engine_msg_recv_get_ops(env, \
+		msg_recv)->receive (env, msg_recv, msg_ctx));
 
 /************************** End of function macros ****************************/
 
 /************************** Start of function pointers ************************/
 
-    typedef axis2_status_t (*axis2_engine_msg_receiver_free_t)
+    typedef axis2_status_t (*axis2_engine_msg_recv_free_t)
         (axis2_env_t * env,
-         axis2_engine_msg_receiver_t * msg_receiver);
+         axis2_msg_recv_t * msg_recv);
 
-    typedef axis2_status_t (*axis2_engine_msg_receiver_receive_t)
+    typedef axis2_status_t (*axis2_engine_msg_recv_receive_t)
         (axis2_env_t * env,
-         axis2_engine_msg_receiver_t * msg_receiver,
+         axis2_msg_recv_t * msg_recv,
          axis2_context_msg_ctx_t * msg_ctx);
 
 /**************************** End of function pointers ************************/
 
-    struct axis2_engine_msg_receiver_ops_s
+    struct axis2_engine_msg_recv_ops_s
     {
-        axis2_engine_msg_receiver_free_t free;
+        axis2_engine_msg_recv_free_t free;
 
-        axis2_engine_msg_receiver_receive_t receive;
+        axis2_engine_msg_recv_receive_t receive;
     };
 
-    axis2_engine_msg_receiver_t *axis2_engine_msg_receiver_get_ops
+    axis2_msg_recv_t *axis2_engine_msg_recv_get_ops
         (axis2_env_t * env,
-         axis2_engine_msg_receiver_t * msg_receiver);
+         axis2_msg_recv_t * msg_recv);
 
-      axis2_engine_msg_receiver_t
-        * axis2_engine_msg_receiver_create (axis2_env_t * env);
+      axis2_msg_recv_t
+        * axis2_engine_msg_recv_create (axis2_env_t * env);
 
 /** @} */
 #ifdef __cplusplus

Modified: webservices/axis2/trunk/c/include/axis2_operation.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_operation.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_operation.h (original)
+++ webservices/axis2/trunk/c/include/axis2_operation.h Sun Nov  6 18:23:20 2005
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-#ifndef AXIS2_DESCRIPTION_OPERATION_H
-#define AXIS2_DESCRIPTION_OPERATION_H
+#ifndef AXIS2_OPERATION_H
+#define AXIS2_OPERATION_H
 
 /**
   * @file axis2_operation.h
-  * @brief axis2 DESCRIPTION CORE operation
+  * @brief axis2 operation interface
   */
 
 #include <axis2_core.h>
@@ -32,160 +32,152 @@
 {
 #endif
 
-/** @defgroup axis2_description DESCRIPTION (Axis2 Information model)
-  * @ingroup axis2
+/** @defgroup axis2_operation Operation Description
+  * @ingroup axis2_core_description
   * @{
   */
 
-/** @} */
-
-/**
- * @defgroup axis2_description_operation DESCRIPTION Operation
- * @ingroup axis2_description 
- * @{
- */
-
-/************************** Start of function macros **************************/
-
-#define axis2_description_operation_free(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->free (operation_desc, env));
-
-#define axis2_description_operation_add_param(operation_desc, env, param) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->add_param (operation_desc, env, param));
-
-#define axis2_description_operation_get_param get_param(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->get_param (operation_desc, env));
-
-#define axis2_description_operation_get_params get_params(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->get_params (operation_desc, env));
-
-#define axis2_description_operation_is_param_locked(operation_desc, env \
-		, param_name) (axis2_description_operation_get_ops(operation_desc \
-		, env)->is_param_locked(operation_desc, env, param_name));
-
-#define axis2_operation_set_parent(operation_desc, env, \
-		service_desc) (axis2_description_operation_get_ops(operation_desc \
-		, env)->set_parent (operation_desc, env, service_desc));
-
-#define axis2_description_operation_get_parent(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->get_parent (operation_desc, env));
-
-#define axis2_description_operation_get_name(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc, env)->get_name \
-		(operation_desc, env));
-
-#define axis2_operation_set_msg_exchange_pattern(operation_desc \
-		, env, msg_exchange_pattern) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->set_msg_exchange_pattern (operation_desc \
-		, env, msg_exchange_pattern));
-
-#define axis2_description_operation_get_msg_exchange_pattern(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->get_msg_exchange_pattern (operation_desc, env));
-
-#define axis2_operation_set_msg_receiver(operation_desc \
-		, env, msg_receiver) (axis2_description_operation_get_ops(operation_desc \
-		, env)->set_msg_receiver (operation_desc, env, msg_receiver));
-
-#define axis2_description_operation_get_msg_receiver(operation_desc, env) \
-		(axis2_description_operation_get_ops(operation_desc \
-		, env)->get_msg_receiver (operation_desc, env));
-
-/************************** End of function macros ****************************/
-
-/************************** Start of function pointers ************************/
-
-typedef axis2_status_t (*axis2_description_operation_free_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env);
-
-typedef axis2_status_t (*axis2_description_operation_add_param_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env
-        , axis2_param_t *param);
-
-typedef axis2_param_t *(*axis2_description_operation_get_param_t) 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-        , const axis2_char_t *name);
-
-typedef axis2_hash_t *(*axis2_description_operation_get_params_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env);
-		 
-typedef axis2_bool_t (*axis2_description_operation_is_param_locked_t)
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, const axis2_char_t *param_name);
-		 
-
-typedef axis2_status_t (*axis2_operation_set_parent_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env
-         , axis2_description_service_t *service_desc);
-
-typedef axis2_description_service_t *(*axis2_description_operation_get_parent_t) 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
-
-typedef axis2_qname_t *(*axis2_description_operation_get_name_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env);
+struct axis2_svc_s;
+struct axis2_msg_recv_s;
+typedef struct axis2_operation_s axis2_operation_t;
+typedef struct axis2_operation_s axis2_operation_t;    
+    
+/** 
+ * @brief Operation operations struct
+ * Encapsulator struct for operations of axis2_operation
+ */    
+AXIS2_DECLARE_DATA struct axis2_operation_ops_s
+{
+    /** De-allocate memory
+  	 * @return status code
+  	 */
+	axis2_status_t (AXIS2_CALL *free) (axis2_operation_t *operation, 
+                                        axis2_env_t **env);
+
+    /**
+     * Method addParameter
+     *
+     * @param param Parameter that will be added
+     */
+	axis2_status_t (AXIS2_CALL *add_param)(axis2_operation_t *operation, 
+                                            axis2_env_t **env, 
+                                            axis2_param_t *param);
+    
+    /**
+     * Method getParameter
+     *
+     * @param name Name of the parameter
+     */
+	axis2_param_t *(AXIS2_CALL *get_param)(axis2_operation_t *operation, 
+                                            axis2_env_t **env,
+                                            const axis2_char_t *name);
+
+
+	axis2_hash_t *(AXIS2_CALL *get_params) (axis2_operation_t *operation, 
+                                                axis2_env_t **env);
+
+    //to check whether a given paramter is locked
+	axis2_bool_t (AXIS2_CALL *is_param_locked) (axis2_operation_t *operation, 
+                                                axis2_env_t **env,
+		                                        const axis2_char_t *param_name);
+	
+	axis2_status_t (AXIS2_CALL *set_parent) (axis2_operation_t *operation, 
+                                     *axis2_env_t **env,
+                                     axis2_svc_t *service_desc);
+
+	struct axis2_svc_s *(AXIS2_CALL *get_parent) (axis2_operation_t *operation, 
+                                            axis2_env_t **env);
+
+	axis2_qname_t *(AXIS2_CALL *get_name) (axis2_operation_t *operation, 
+                                            axis2_env_t **env);
+
+	axis2_status_t (AXIS2_CALL *set_msg_exchange_pattern) 
+                                                (axis2_operation_t *operation, 
+                                                axis2_env_t **env,
+                                                axis2_char_t *pattern);
+
+	axis2_char_t *(AXIS2_CALL *get_msg_exchange_pattern)
+                                                (axis2_operation_t *operation, 
+                                                axis2_env_t **env);
+
+	axis2_status_t (AXIS2_CALL *set_msg_recv) (axis2_operation_t *operation, 
+                                        axis2_env_t **env,
+                                        struct axis2_msg_recv_s *msg_recv);
 
-typedef axis2_status_t (*axis2_operation_set_msg_exchange_pattern_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env
-         , axis2_char_t *pattern);
+	struct axis2_msg_recv_s *(AXIS2_CALL *get_msg_recv) (axis2_operation_t *operation, 
+                                                    axis2_env_t **env);
+};
 
-typedef axis2_char_t *(*axis2_description_operation_get_msg_exchange_pattern_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env);
+/** 
+ * @brief Operaton struct
+ *	Axis2 Operation   
+ */  
+AXIS2_DECLARE_DATA struct axis2_operation_s
+{
+	axis2_operation_ops_t *ops;
+};
 
-typedef axis2_status_t (*axis2_operation_set_msg_receiver_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env,
-         axis2_engine_msg_receiver_t *msg_receiver);
+/** 
+ * Creates operation struct
+ * @return pointer to newly created operation
+ */
+AXIS2_DECLARE(axis2_operation_t *)
+axis2_operation_create (axis2_env_t **env);
 
-typedef axis2_engine_msg_receiver_t *(*axis2_description_operation_get_msg_receiver_t)
-        (axis2_description_operation_t *operation_desc, axis2_env_t *env);
+/** 
+ * Creates operation struct with name
+ * @param name operation name
+ * @return pointer to newly created operation
+ */
+AXIS2_DECLARE(axis2_operation_t *)
+axis2_operation_create_with_name (axis2_env_t **env, 
+                                                axis2_qname_t *name);
 
-/**************************** End of function pointers ************************/
 
-struct axis2_description_operation_ops_s
-{
-	axis2_description_operation_free_t free;
+/************************** Start of function macros **************************/
 
-	axis2_description_operation_add_param_t add_param;
+#define AXIS2_OPERATION_FREE(operation, env) \
+        ((operation->ops)->free (operation, env));
 
-	axis2_description_operation_get_param_t get_param;
+#define AXIS2_OPERATION_ADD_PARAM(operation, env, param) \
+		((operation->ops)->add_param (operation, env, param));
 
-	axis2_description_operation_get_params_t get_params;
+#define AXIS2_OPERATION_GET_PARAM(operation, env) \
+		((operation->ops)->get_param (operation, env));
 
-	axis2_description_operation_is_param_locked_t is_param_locked;
-	
-	axis2_operation_set_parent_t set_parent;
+#define AXIS2_OPERATION_GET_PARAMS(operation, env) \
+		((operation->ops)->get_params (operation, env));
 
-	axis2_description_operation_get_parent_t get_parent;
+#define AXIS2_OPERATION_IS_PARAM_LOCKED(operation, env, param_name) \
+        ((operation->ops)->is_param_locked(operation, env, param_name));
 
-	axis2_description_operation_get_name_t get_name;
+#define AXIS2_OPERATION_SET_PARENT(operation, env, service_desc) \
+        ((operation->ops)->set_parent (operation, env, service_desc));
 
-	axis2_operation_set_msg_exchange_pattern_t
-		set_msg_exchange_pattern;
+#define AXIS2_OPERATION_GET_PARENT(operation, env) \
+		((operation->ops)->get_parent (operation, env));
 
-	axis2_description_operation_get_msg_exchange_pattern_t
-		get_msg_exchange_pattern;
+#define AXIS2_OPERATION_GET_NAME(operation, env) \
+		((operation->ops)->get_name (operation, env));
 
-	axis2_operation_set_msg_receiver_t set_msg_receiver;
+#define AXIS2_OPERATION_SET_MSG_EXCHANGE_PATTERN(operation , env, \
+        msg_exchange_pattern) \
+		((operation->ops)->set_msg_exchange_pattern (operation, env, \
+        msg_exchange_pattern));
 
-	axis2_description_operation_get_msg_receiver_t get_msg_receiver;
-};
+#define AXIS2_OPERATION_GET_MSG_EXCHANGE_PATTERN(operation, env) \
+		((operation->ops)->get_msg_exchange_pattern (operation, env));
 
-axis2_description_operation_ops_t *axis2_description_operation_get_ops
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
+#define AXIS2_OPERATION_SET_MSG_RECEIVER(operation, env, msg_recv) \
+        ((operation->ops)->set_msg_recv (operation, env, msg_recv));
 
-axis2_description_operation_t *axis2_description_operation_create 
-		(axis2_env_t *env);
+#define AXIS2_OPERATION_GET_MSG_RECEIVER(operation, env) \
+		((operation->ops)->get_msg_recv (operation, env));
 
-axis2_description_operation_t *axis2_description_operation_create_with_name 
-		(axis2_env_t *env, axis2_qname_t *name);
+/************************** End of function macros ****************************/
 
 /** @} */
 #ifdef __cplusplus
 }
 #endif
-#endif                          /* AXIS2_DESCRIPTION_OPERATION_H */
+#endif  /* AXIS2_OPERATION_H */

Modified: webservices/axis2/trunk/c/include/axis2_param_container.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_param_container.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_param_container.h (original)
+++ webservices/axis2/trunk/c/include/axis2_param_container.h Sun Nov  6 18:23:20 2005
@@ -19,7 +19,7 @@
 
 /**
  * @file axis2_param_container.h
- * @brief Parameter handling
+ * @brief Axis2 Param container interface
  */
 
 #include <axis2.h>
@@ -39,34 +39,26 @@
 {
 #endif
 
-/** @defgroup axis2_description DESCRIPTION (Axis2 Information model)
-  * @ingroup axis2
-  * @{
-  */
-
-/** @} */
-
-/**
- * @defgroup axis2_description_param_include DESCRIPTION ParameterInclude
- * @ingroup axis2_description 
+/** @defgroup axis2_param_container Parameter Container
+ * @ingroup axis2_description
  * @{
  */
 
 
-/**
-  * Paramter can be any thing it can be XML element with number of child 
-  * elements
-  */
-struct axis2_param_container_ops_s
+/** 
+ * @brief Param Container operations struct
+ * Encapsulator struct for operations of axis2_param_container
+ */
+AXIS2_DECLARE_DATA struct axis2_param_container_ops_s
 {
-	/** Deallocate memory
+	/** De-allocate memory
   	 * @return status code
   	 */
 	axis2_status_t (AXIS2_CALL *free)(axis2_param_container_t *param_container,
 										axis2_env_t **env);
 
 	/** Add a param
-     * @param params
+     * @param param param to be added
      * @return status code
      */
 	axis2_status_t (AXIS2_CALL *add_param)
@@ -75,7 +67,7 @@
 		 								axis2_param_t *param);
 
 	/** To get a param in a given description 
-     * @param param name
+     * @param name param name
      * @return param
      */
 	axis2_param_t *(AXIS2_CALL *get_param) 
@@ -92,7 +84,7 @@
 										axis2_env_t **env);
 	
 	/** To check whether the paramter is locked at any level
-	 * @param param name
+	 * @param param_name name of the param
 	 * @return whether param is locked
 	 */
 	axis2_bool_t (AXIS2_CALL *is_param_locked)
@@ -102,22 +94,21 @@
 
 };
 
-/** @struct axis2_description_param_include
-  * @brief DESCRIPTION param_include struct
-  *	Holder for params
-  *  
-*/  
-struct axis2_param_container_s
+/** 
+ * @brief Param container struct
+ *	Container for params  
+ */  
+AXIS2_DECLARE_DATA struct axis2_param_container_s
 {
 	axis2_param_container_ops_t *ops;
 };
 
 /**
-  *	Create axis2_param_container_t
-  * @return axis2_param_container_t
-  */
-axis2_param_container_t 
-*axis2_param_container_create (axis2_env_t **env);
+ * Creates param container struct
+ * @return pointer to newly created param container
+ */
+AXIS2_DECLARE(axis2_param_container_t *) 
+axis2_param_container_create (axis2_env_t **env);
 
 /*************************** Function macros **********************************/
 
@@ -145,4 +136,4 @@
 #ifdef __cplusplus
 }
 #endif
-#endif                          /* AXIS2_PARAM_CONTAINER_H */
+#endif  /* AXIS2_PARAM_CONTAINER_H */

Modified: webservices/axis2/trunk/c/include/axis2_svc.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_svc.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_svc.h (original)
+++ webservices/axis2/trunk/c/include/axis2_svc.h Sun Nov  6 18:23:20 2005
@@ -14,18 +14,18 @@
  * limitations under the License.
  */
 
-#ifndef AXIS2_DESCRIPTION_SERVICE_H
-#define AXIS2_DESCRIPTION_SERVICE_H
+#ifndef AXIS2_SVC_H
+#define AXIS2_SVC_H
 
 /**
   * @file axis2_svc.h
-  * @brief axis2 DESCRIPTION CORE service
+  * @brief axis2 service interface
   */
 
 #include <axis2_core.h>
 #include <axis2_param_container.h>
 #include <axis2_operation.h>
-#include <axis2_description_servicegroup.h>
+#include <axis2_svc_grp.h>
 #include <axis2_qname.h>
 
 #ifdef __cplusplus
@@ -33,186 +33,148 @@
 {
 #endif
 
-/** @defgroup axis2_description DESCRIPTION (Axis2 Information model)
-  * @ingroup axis2
+/** @defgroup axis2_svc Service description
+  * @ingroup axis2_core_description
   * @{
   */
 
-/** @} */
+/** 
+ * @brief Service operations struct
+ * Encapsulator struct for operations of axis2_svc
+ */    
+struct axis2_svc_ops_s
+{
+	axis2_status_t (AXIS2_CALL *free) (axis2_svc_t *srv_desc, axis2_env_t **env);
 
-/**
- * @defgroup axis2_description_service DESCRIPTION Service
- * @ingroup axis2_description 
- * @{
+	axis2_status_t (AXIS2_CALL *add_operation) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env,
+	 	                                        axis2_operation_t *operation);
+
+	axis2_operation_t *(AXIS2_CALL *get_operation_with_qname) (
+                                                  axis2_svc_t *srv_desc, 
+                                                  axis2_env_t **env,
+	 	                                          axis2_qname_t *operation_name);
+
+	axis2_operation_t *(AXIS2_CALL *get_operation_with_name) (
+                                            axis2_svc_t *srv_desc, 
+                                            axis2_env_t **env,
+	 	                                    const axis2_char_t * operation_name);
+
+	axis2_hash_t *(AXIS2_CALL *get_operations) (axis2_svc_t *srv_desc, 
+                                                    axis2_env_t **env);
+
+	axis2_status_t (AXIS2_CALL *set_parent) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env,
+	 	                                        axis2_svc_grp_t *svc_grp);
+
+	axis2_svc_grp_t *(AXIS2_CALL *get_parent) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env);
+	
+	axis2_qname_t *(AXIS2_CALL *get_name) (const axis2_svc_t *srv_desc, 
+                                            axis2_env_t **env);
+
+	axis2_status_t (AXIS2_CALL *add_param) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env,
+		                                        axis2_param_t *param);
+
+	axis2_param_t *(AXIS2_CALL *get_param) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env,
+		                                        const axis2_char_t *name);
+
+	axis2_hash_t *(AXIS2_CALL *get_params) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env);
+	
+	axis2_bool_t (AXIS2_CALL *is_param_locked) (axis2_svc_t *srv_desc, 
+                                                axis2_env_t **env,
+		                                        const axis2_char_t *param_name);
+};
+
+/** 
+ * @brief Service struct
+ *	Axis2 Service  
+ */
+struct axis2_svc_s
+{
+	axis2_svc_ops_t *ops;   
+
+};
+
+/** 
+ * Creates service struct
+ * @return pointer to newly created service
+ */
+AXIS2_DECLARE(axis2_svc_t *)
+axis2_svc_create (axis2_env_t **env);
+
+/** 
+ * Creates service struct with qname
+ * @param qname ualified name
+ * @return pointer to newly created service
  */
+AXIS2_DECLARE(axis2_svc_t *)
+axis2_svc_create_with_qname (axis2_env_t **env, 
+                                axis2_qname_t *qname);
+
 
 /**************************** Start of function macros ************************/
 
-#define axis2_description_service_free(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->free \
+#define axis2_svc_free(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->free \
 		(srv_desc, env));
 
-#define axis2_description_service_add_operation(srv_desc, env, operation_desc) \
-		(axis2_description_service_get_ops(srv_desc, env)->add_operation \
+#define axis2_svc_add_operation(srv_desc, env, operation_desc) \
+		(axis2_svc_get_ops(srv_desc, env)->add_operation \
 		(srv_desc, env, operation_desc));
 
-#define axis2_description_service_get_operation_with_qname(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_operation_with_qname \
+#define axis2_svc_get_operation_with_qname(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_operation_with_qname \
 		(srv_desc, env));
 
-#define axis2_description_service_get_operation_with_name(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_operation_with_name \
+#define axis2_svc_get_operation_with_name(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_operation_with_name \
 		(srv_desc, env));
 
-#define axis2_description_service_get_operations(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_operations \
+#define axis2_svc_get_operations(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_operations \
 		(srv_desc, env));
 
-#define axis2_description_service_set_parent(srv_desc, env \
-		, servicegroup_desc) (axis2_description_service_get_ops(srv_desc \
-		, env)->set_parent (srv_desc, env, servicegroup_desc));
+#define axis2_svc_set_parent(srv_desc, env \
+		, svc_grp) (axis2_svc_get_ops(srv_desc \
+		, env)->set_parent (srv_desc, env, svc_grp));
 
-#define axis2_description_service_get_parent(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_parent \
+#define axis2_svc_get_parent(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_parent \
 		(srv_desc, env));
 		
-#define axis2_description_service_get_name(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_name(srv_desc \
+#define axis2_svc_get_name(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_name(srv_desc \
 		, env));
 		
-#define axis2_description_service_add_param(srv_desc, env, param) \
-		(axis2_description_service_get_ops(srv_desc, env)->add_param(srv_desc \
+#define axis2_svc_add_param(srv_desc, env, param) \
+		(axis2_svc_get_ops(srv_desc, env)->add_param(srv_desc \
 		, env, param));
 		
 
-#define axis2_description_service_get_param(srv_desc, env, name) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_param(srv_desc \
+#define axis2_svc_get_param(srv_desc, env, name) \
+		(axis2_svc_get_ops(srv_desc, env)->get_param(srv_desc \
 		, env, name));
 		
 
-#define axis2_description_service_get_params(srv_desc, env) \
-		(axis2_description_service_get_ops(srv_desc, env)->get_params(srv_desc \
+#define axis2_svc_get_params(srv_desc, env) \
+		(axis2_svc_get_ops(srv_desc, env)->get_params(srv_desc \
 		, env));
 		
 		
 
-#define axis2_description_service_is_param_locked(srv_desc, env, \
-		param_name) (axis2_description_service_get_ops(env \
+#define axis2_svc_is_param_locked(srv_desc, env, \
+		param_name) (axis2_svc_get_ops(env \
 		, srv_desc)->is_parameter_locked(srv_desc, env, param_name));
 				
 
 /**************************** End of function macros **************************/
-/**************************** Function pointers *******************************/
-
-
-typedef axis2_status_t (*axis2_description_service_free_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
-
-typedef axis2_status_t (*axis2_description_service_add_operation_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env,
-	 	axis2_description_operation_t * operation_desc);
-
-typedef axis2_description_operation_t
-		*(*axis2_description_service_get_operation_with_qname_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env,
-	 	axis2_qname_t * operation_name);
-
-typedef axis2_description_operation_t
-		* (*axis2_description_service_get_operation_with_name_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env,
-	 	const axis2_char_t * operation_name);
-
-typedef axis2_hash_t *(*axis2_description_service_get_operations_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
-
-typedef axis2_status_t (*axis2_description_service_set_parent_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env,
-	 	axis2_description_servicegroup_t * servicegroup_desc);
-
-typedef axis2_description_servicegroup_t
-		* (*axis2_description_service_get_parent_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
-		 
-typedef axis2_qname_t *(*axis2_description_service_get_name_t)
-		(const axis2_description_service_t *srv_desc, axis2_env_t *env);
-		
-typedef axis2_status_t (*axis2_description_service_add_param_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, axis2_param_t *param);
-
-typedef axis2_param_t *(*axis2_description_service_get_param_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, const axis2_char_t *name);
-
-typedef axis2_hash_t *(*axis2_description_service_get_params_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
-
-typedef axis2_bool_t (*axis2_description_service_is_param_locked_t)
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, const axis2_char_t *param_name);		
-
-/************************ End function pointers *******************************/
-
-/** @struct axis2_description_service_ops_s
-  * @brief operations for the axis2_description_service_t
-  * This contain all the operations for axis2_description_service struct
-  */
-struct axis2_description_service_ops_s
-{
-	axis2_description_service_free_t free;
-
-	axis2_description_service_add_operation_t add_operation;
-
-	axis2_description_service_get_operation_with_qname_t
-		get_operation_with_qname;
-
-	axis2_description_service_get_operation_with_name_t
-		get_operation_with_name;
-
-	axis2_description_service_get_operations_t get_operations;
-
-	axis2_description_service_set_parent_t set_parent;
-
-	axis2_description_service_get_parent_t get_parent;
-	
-	axis2_description_service_get_name_t get_name;
-
-	axis2_description_service_add_param_t add_param;
-
-	axis2_description_service_get_param_t get_param;
-
-	axis2_description_service_get_params_t get_params;
-	
-	axis2_description_service_is_param_locked_t is_param_locked;
-};
-
-/**
-  * @struct axis2_description_service
-  * @brief DESCRIPTION service struct
-  * This holds operations on the service struct
-  */
-struct axis2_description_service_s
-{
-	axis2_description_service_ops_t *ops;   
-
-};
-
-/** To get the operation struct for axis_description_service_t call this
-  * function
-  * @return operation struct for service
-  */
-axis2_description_service_ops_t *axis2_description_service_get_ops
-        (axis2_description_service_t *srv_desc, axis2_env_t *env);
-
-/** Create a service with qualified name
-  * @param qualified name
-  * @return service struct
-  */
-axis2_description_service_t *axis2_description_service_create_with_qname
-        (axis2_env_t *env, axis2_qname_t *qname);
 
 /** @} */
 #ifdef __cplusplus
 }
 #endif
-#endif                          /* AXIS2_DESCRIPTION_SERVICE_H */
+#endif                          /* AXIS2_SVC_H */

Modified: webservices/axis2/trunk/c/include/axis2_svc_grp.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_svc_grp.h?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_svc_grp.h (original)
+++ webservices/axis2/trunk/c/include/axis2_svc_grp.h Sun Nov  6 18:23:20 2005
@@ -96,57 +96,57 @@
   * @return status code
   */
 typedef axis2_status_t (*axis2_description_servicegroup_free_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env);
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env);
 
 /** Set name of the service group_member
   * @param servicegroup_name
   * @return status_code
   */
 typedef axis2_status_t (*axis2_description_servicegroup_set_name_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, axis2_char_t *servicegroup_name);
 		
 /** get the service group name
   * @return service group name
   */
 typedef axis2_char_t *(*axis2_description_servicegroup_get_name_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env);
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env);
 
 /** Add a service to the serivce group
   * @param service to be added
   * @return status code
   */
 typedef axis2_status_t (*axis2_description_servicegroup_add_service_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
-	 	, axis2_description_service_t *service_desc);
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
+	 	, axis2_svc_t *service_desc);
 
 /** Get the service from service group_member
   * @param service_name
   * @return service description
   */
-typedef axis2_description_service_t 
+typedef axis2_svc_t 
 		*(*axis2_description_servicegroup_get_service_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, const axis2_qname_t* service_name);
 
 typedef axis2_status_t (*axis2_description_servicegroup_remove_service_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, const axis2_qname_t *service_name);
 		
 typedef axis2_status_t (*axis2_description_servicegroup_add_param_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, axis2_param_t *param);
 		
 
 typedef axis2_param_t *(*axis2_description_servicegroup_get_param_t)(
-		axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, const axis2_char_t *name);
 		
 typedef axis2_hash_t *(*axis2_description_servicegroup_get_params_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env);
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env);
 		
 typedef axis2_bool_t (*axis2_description_servicegroup_is_param_locked_t)
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env
 		, const axis2_char_t *param_name);
 		
 /*************************** End of function pointers *************************/
@@ -166,9 +166,9 @@
 };
 
 axis2_description_servicegroup_ops_t *axis2_description_servicegroup_get_ops 
-		(axis2_description_servicegroup_t *srvgrp_desc, axis2_env_t *env);
+		(axis2_svc_grp_t *srvgrp_desc, axis2_env_t *env);
 
-axis2_description_servicegroup_t *axis2_description_servicegroup_create
+axis2_svc_grp_t *axis2_description_servicegroup_create
 		(axis2_env_t *env);
 
 /** @} */

Modified: webservices/axis2/trunk/c/modules/core/description/src/operation.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/src/operation.c?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/src/operation.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/src/operation.c Sun Nov  6 18:23:20 2005
@@ -14,322 +14,308 @@
  * limitations under the License.
  */
  
-#include <axis2_description_operation.h>
+#include <axis2_operation.h>
 
-/**
-  * @struct axis2_description_operation_s
-  * @brief DESCRIPTION operation
-  * This holds the information about operation.
-  */
-struct axis2_description_operation_s
-{
-	axis2_description_operation_ops_t *ops;
-	axis2_description_param_include_t *param_include;
-	axis2_description_service_t *parent;
-	axis2_qname_t *name;
-	axis2_engine_msg_receiver_t *msg_receiver;
+/** 
+ * @brief Operaton struct impl
+ *	Axis2 Operations  
+ */ 
+typedef struct axis2_operation_impl_s
+{
+	axis2_operation_t operation;
+	axis2_param_container_t *param_container;
+	axis2_svc_t *parent;
+	axis2_qname_t *qname;
+	axis2_msg_recv_t *msg_recv;
 	axis2_char_t* msg_exchange_pattern;
-};
+} axis2_operation_impl_t;
 
+#define AXIS2_INTF_TO_IMPL(operation) ((axis2_operation_impl_t *)operation)
 	
 /*************************** Function headers *********************************/
 
-axis2_status_t axis2_description_operation_ops_free 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);	
-
-axis2_status_t axis2_description_operation_ops_add_param
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_description_param_t *param);
-
-axis2_description_param_t *axis2_description_operation_ops_get_param
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, const axis2_char_t *name);
-
-axis2_hash_t *axis2_description_operation_ops_get_params
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
-
-axis2_bool_t axis2_description_operation_ops_is_param_locked(
-		axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, const axis2_char_t *param_name);
-
-axis2_status_t axis2_description_operation_ops_set_parent
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_description_service_t *service_desc);
-
-axis2_description_service_t *axis2_description_operation_ops_get_parent
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
+axis2_status_t AXIS2_CALL
+axis2_operation_free (axis2_operation_t *operation, 
+                        axis2_env_t **env);	
+
+axis2_status_t AXIS2_CALL 
+axis2_operation_add_param (axis2_operation_t *operation, 
+                            axis2_env_t **env,
+                            axis2_param_t *param);
+
+axis2_param_t * AXIS2_CALL
+axis2_operation_get_param (axis2_operation_t *operation, 
+                            axis2_env_t **env,
+                            const axis2_char_t *name);
+
+axis2_hash_t * AXIS2_CALL
+axis2_operation_get_params (axis2_operation_t *operation, 
+                                axis2_env_t **env);
+
+axis2_bool_t AXIS2_CALL
+axis2_operation_is_param_locked(axis2_operation_t *operation, 
+                                    axis2_env_t **env
+    ,                               const axis2_char_t *param_name);
+
+axis2_status_t AXIS2_CALL
+axis2_operation_set_parent (axis2_operation_t *operation, 
+                                axis2_env_t **env,
+                                axis2_svc_t *svc);
+
+axis2_svc_t * AXIS2_CALL
+axis2_operation_get_parent (axis2_operation_t *operation, 
+                                axis2_env_t **env);
 		
-axis2_qname_t *axis2_description_operation_ops_get_name
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
-
-axis2_status_t axis2_description_operation_ops_set_msg_exchange_pattern 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_char_t *pattern);
+axis2_qname_t * AXIS2_CALL
+axis2_operation_get_name (axis2_operation_t *operation, 
+                            axis2_env_t **env);
+
+axis2_status_t AXIS2_CALL
+axis2_operation_set_msg_exchange_pattern (axis2_operation_t *operation, 
+                                            axis2_env_t **env,
+                                            axis2_char_t *pattern);
 		
-axis2_char_t *axis2_description_operation_ops_get_msg_exchange_pattern 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
+axis2_char_t * AXIS2_CALL
+axis2_operation_get_msg_exchange_pattern (axis2_operation_t *operation, 
+                                            axis2_env_t **env);
 		
-axis2_status_t axis2_description_operation_ops_set_msg_receiver 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_engine_msg_receiver_t *msg_receiver);
-
-axis2_engine_msg_receiver_t *axis2_description_operation_ops_get_msg_receiver 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env);
+axis2_status_t AXIS2_CALL
+axis2_operation_set_msg_recv (axis2_operation_t *operation, 
+                                axis2_env_t **env,
+                                axis2_engine_msg_recv_t *msg_recv);
+
+axis2_engine_msg_recv_t * AXIS2_CALL
+axis2_operation_get_msg_recv (axis2_operation_t *operation, 
+                                axis2_env_t **env);
 		
 /************************* End of function headers ****************************/	
 
-axis2_description_operation_ops_t *axis2_description_operation_get_ops
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
-{
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;	
-	}
-	return (axis2_description_operation_ops_t *) operation_desc->ops;
-}
-
-axis2_description_operation_t *axis2_description_operation_create 
-		(axis2_env_t *env)
+axis2_operation_t * AXIS2_CALL
+axis2_operation_create (axis2_env_t **env)
 {
-	axis2_description_operation_ops_t *ops = NULL;
-	axis2_description_operation_t *operation_desc = 
-		(axis2_description_operation_t *) AXIS2_MALLOC (env->allocator
-		, sizeof (axis2_description_operation_t));
-	if(!operation_desc)
+    AXIS2_ENV_CHECK(env, NULL);
+	axis2_operation_impl_t *operation_impl = 
+		(axis2_operation_impl_t *) AXIS2_MALLOC ((*env)->allocator,
+		sizeof (axis2_operation_impl_t));
+     
+	if(NULL == operation_impl)
 	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return NULL;
+		AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL);
 	}
-	ops = (axis2_description_operation_ops_t *) AXIS2_MALLOC(env->allocator,
-		sizeof(axis2_description_operation_ops_t));
-	if(!ops)
-	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return NULL;
-	}	
-	ops->free = axis2_description_operation_ops_free;
-	ops->add_param = axis2_description_operation_ops_add_param;
-	ops->get_param = axis2_description_operation_ops_get_param;
-	ops->get_params = axis2_description_operation_ops_get_params;
-	ops->set_parent = axis2_description_operation_ops_set_parent;
-	ops->get_parent = axis2_description_operation_ops_get_parent;
-	ops->get_name = axis2_description_operation_ops_get_name;
-	ops->set_msg_exchange_pattern 
-		= axis2_description_operation_ops_set_msg_exchange_pattern;
-	ops->get_msg_exchange_pattern
-		= axis2_description_operation_ops_get_msg_exchange_pattern;
-	ops->set_msg_receiver = axis2_description_operation_ops_set_msg_receiver;
-	ops->get_msg_receiver = axis2_description_operation_ops_get_msg_receiver;
-	
-	operation_desc->ops = ops;
-	
-	axis2_description_param_include_t *param_include 
-		= (axis2_description_param_include_t *)
-		axis2_description_param_include_create(env);		
-	if(!param_include)
+	
+	operation_impl->ops->free = axis2_operation_free;
+	operation_impl->ops->add_param = axis2_operation_add_param;
+	operation_impl->ops->get_param = axis2_operation_get_param;
+	operation_impl->ops->get_params = axis2_operation_get_params;
+	operation_impl->ops->set_parent = axis2_operation_set_parent;
+	operation_impl->ops->get_parent = axis2_operation_get_parent;
+	operation_impl->ops->get_name = axis2_operation_get_name;
+	operation_impl->ops->set_msg_exchange_pattern 
+		= axis2_operation_set_msg_exchange_pattern;
+	operation_impl->ops->get_msg_exchange_pattern
+		= axis2_operation_get_msg_exchange_pattern;
+	operation_impl->ops->set_msg_recv = axis2_operation_set_msg_recv;
+	operation_impl->ops->get_msg_recv = axis2_operation_get_msg_recv;
+	
+	axis2_param_container_t *param_container = (axis2_param_container_t *)
+		axis2_param_container_create(env);		
+	if(NULL == param_container)
 	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return NULL;
+        AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL);		
 	}
 
-	operation_desc->param_include = param_include;
+	operation_impl->param_container = param_container;
 	
-	operation_desc->parent = NULL;
+	operation_impl->parent = NULL;
 	
-	operation_desc->name = NULL;
+	operation_impl->qname = NULL;
 	
-	operation_desc->msg_receiver = NULL;
+	operation_impl->msg_recv = NULL;
 	
-	operation_desc->msg_exchange_pattern = MEP_URI_IN_OUT;
+	operation_impl->msg_exchange_pattern = MEP_URI_IN_OUT;
 						
-	return operation_desc;
+	return &(operation_impl->operation);
 }
 
-axis2_description_operation_t *axis2_description_operation_create_with_name 
-		(axis2_env_t *env, axis2_qname_t *name)
+axis2_operation_t * AXIS2_CALL
+axis2_operation_create_with_name (axis2_env_t **env, axis2_qname_t *qname)
 {
-	axis2_description_operation_t *operation_desc 
-		= axis2_description_operation_create(env);
-	
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return NULL;
-	}
-	if(!name)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}		
-						
-	return operation_desc;	
-}
-
-/******************************************************************************/
-
-axis2_status_t axis2_description_operation_ops_free
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
-{
-	if(operation_desc)
-	{
-		AXIS2_FREE(env->allocator, operation_desc);
-		return AXIS2_SUCCESS;
-	}
-	return AXIS2_ERROR_UNALLOCATED_MEMEORY_RELEASE_REQUESTED;
+	axis2_operation_impl_t *operation_impl = 
+        AXIS2_INTF_TO_IMPL(axis2_operation_create(env));
+    
+	if(NULL == operation_impl)
+	{
+		AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL);
+	}
+    AXIS2_PARAM_CHECK(env, operation_impl, AXIS2_FAILURE);	
+	
+    operation_impl->qname = qname;    
+	return &(operation_impl->operation);	
+}
+
+/*************************** Start of operation impls *************************/
+
+axis2_status_t AXIS2_CALL 
+axis2_operation_free (axis2_operation_t *operation, axis2_env_t **env)
+{ 
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FAILURE);
+    
+	if(NULL != operation->ops)
+		AXIS2_FREE((*env)->allocator, operation->ops);
+    
+    if(NULL != AXIS2_INTF_TO_IMPL(operation)->param_container)
+	    AXIS2_PARAM_CONTAINER_FREE(AXIS2_INTF_TO_IMPL(operation)->param_container
+        , env);
+    
+/*    if(NULL != AXIS2_INTF_TO_IMPL(operation)->parent)
+	    AXIS2_SVC_FREE(AXIS2_INTF_TO_IMPL(operation)->parent, env);
+    
+    if(NULL != AXIS2_INTF_TO_IMPL(operation)->qname)
+	    AXIS2_QNAME_FREE(AXIS2_INTF_TO_IMPL(operation)->qname, env);
+    
+    if(NULL != AXIS2_INTF_TO_IMPL(operation)->msg_recv)
+	    AXIS2_MSG_RECV_FREE(AXIS2_INTF_TO_IMPL(operation)->msg_recv, env);
+*/    
+    if(NULL != AXIS2_INTF_TO_IMPL(operation)->msg_exchange_pattern)
+	    AXIS2_FREE((*env)->allocator, 
+        AXIS2_INTF_TO_IMPL(operation)->msg_exchange_pattern);
+        
+    AXIS2_FREE((*env)->allocator, AXIS2_INTF_TO_IMPL(operation));
+    
+    return AXIS2_SUCCESS;
 }	
 	
-axis2_status_t axis2_description_operation_ops_add_param
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_description_param_t *param)
-{
-	if(!operation_desc || !operation_desc->param_include || !param)
-	{
-		return AXIS2_ERROR_INVALID_NULL_PARAM;
-	}
-	axis2_hash_set (axis2_description_param_include_get_params
-		(operation_desc->param_include, env), axis2_description_param_get_name
-		(param, env)
-		, AXIS2_HASH_KEY_STRING, param);	
+axis2_status_t AXIS2_CALL 
+axis2_operation_add_param (axis2_operation_t *operation, 
+                                axis2_env_t **env,       
+		                        axis2_param_t *param)
+{
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FALSE);
+    AXIS2_PARAM_CHECK(env, AXIS2_INTF_TO_IMPL(operation)->param_container, 
+        AXIS2_FALSE);
+    AXIS2_PARAM_CHECK(env, param, AXIS2_FALSE);
+	
+	axis2_hash_set 
+        (AXIS2_PARAM_CONTAINER_GET_PARAMS(AXIS2_INTF_TO_IMPL(operation)->
+        param_container, env), AXIS2_PARAM_GET_NAME(param, env), 
+        AXIS2_HASH_KEY_STRING, param);	
 	return AXIS2_SUCCESS;
 	
 }
 
-axis2_description_param_t *axis2_description_operation_ops_get_param(
-		axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, const axis2_char_t *name)
-{
-	if(!operation_desc || !operation_desc->param_include)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
+axis2_param_t * AXIS2_CALL
+axis2_operation_get_param (axis2_operation_t *operation, 
+                                axis2_env_t **env,
+		                        const axis2_char_t *name)
+{
+	AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FALSE);
+    AXIS2_PARAM_CHECK(env, AXIS2_INTF_TO_IMPL(operation)->param_container, 
+        AXIS2_FALSE);
+	
 	axis2_char_t *tempname = axis2_strdup(name);
-	if(!tempname)
-	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return NULL;
-	}
+	if(NULL == tempname)
+        AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, AXIS2_FALSE);
 		
-	return (axis2_description_param_t *)(axis2_hash_get 
-		(axis2_description_param_include_get_params(operation_desc->param_include
-		, env), tempname, AXIS2_HASH_KEY_STRING));
+	return (axis2_param_t *)(axis2_hash_get (
+        AXIS2_PARAM_CONTAINER_GET_PARAMS(AXIS2_INTF_TO_IMPL(operation)->
+        param_container, env), tempname, AXIS2_HASH_KEY_STRING));
 }
 
-axis2_hash_t *axis2_description_operation_ops_get_params(
-		axis2_description_operation_t *operation_desc, axis2_env_t *env)
+axis2_hash_t * AXIS2_CALL
+axis2_operation_get_params(axis2_operation_t *operation, 
+                                axis2_env_t **env)
 {
-	if(!operation_desc || !operation_desc->param_include)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
+	AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FALSE);
+    AXIS2_PARAM_CHECK(env, AXIS2_INTF_TO_IMPL(operation)->param_container, 
+        AXIS2_FALSE);
 	
-	return axis2_description_param_include_get_params(operation_desc->param_include
-		, env);
+	return AXIS2_PARAM_CONTAINER_GET_PARAMS
+        (AXIS2_INTF_TO_IMPL(operation)->param_container, env);
 }
 
-axis2_bool_t axis2_description_operation_ops_is_param_locked(
-		axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, const axis2_char_t *param_name)
+axis2_bool_t AXIS2_CALL 
+axis2_operation_is_param_locked(axis2_operation_t *operation, 
+                                    axis2_env_t **env,
+		                            const axis2_char_t *param_name)
 {
-	if(!env || !operation_desc || !operation_desc->param_include)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return AXIS2_FALSE;
-	}
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FALSE);
+    AXIS2_PARAM_CHECK(env, AXIS2_INTF_TO_IMPL(operation)->param_container, 
+        AXIS2_FALSE);
+	
 	axis2_char_t *tempname = axis2_strdup(param_name);
-	if(!tempname)
-	{
-		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
-		return AXIS2_FALSE;
-	}
+	if(NULL == tempname)
+        AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, AXIS2_FALSE); 
 		
-	return axis2_description_param_include_is_param_locked
-		(operation_desc->param_include, env, param_name); 
+	return AXIS2_PARAM_CONTAINER_IS_PARAM_LOCKED
+		(AXIS2_INTF_TO_IMPL(operation)->param_container, env, tempname); 
 	
 }
 
-axis2_status_t axis2_description_operation_ops_set_parent
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_description_service_t *service_desc)
+axis2_status_t AXIS2_CALL 
+axis2_operation_set_parent (axis2_operation_t *operation, 
+                                axis2_env_t **env,
+		                        axis2_svc_t *svc)
 {
-	if(!operation_desc || !service_desc)
-	{
-		return AXIS2_ERROR_INVALID_NULL_PARAM;
-	}
-	operation_desc->parent = service_desc;
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env, msg_recv, AXIS2_FAILURE);
+    AXIS2_INTF_TO_IMPL(operation)->parent = svc;
 	return AXIS2_SUCCESS;
 }
 
-axis2_description_service_t *axis2_description_operation_ops_get_parent
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
-{
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
-	return operation_desc->parent;
+axis2_svc_t * AXIS2_CALL
+axis2_operation_get_parent (axis2_operation_t *operation, 
+                                axis2_env_t **env)
+{           
+	AXIS2_FUNC_PARAM_CHECK(operation, env, NULL);
+	return AXIS2_INTF_TO_IMPL(operation)->parent;
 }
 
-axis2_qname_t *axis2_description_operation_ops_get_name
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
+axis2_qname_t * AXIS2_CALL
+axis2_operation_get_name (axis2_operation_t *operation, 
+                            axis2_env_t **env)
 {
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
-	return operation_desc->name;
+    AXIS2_FUNC_PARAM_CHECK(operation, env, NULL);
+	
+    return AXIS2_INTF_TO_IMPL(operation)->name;
 }
 
-axis2_status_t axis2_description_operation_ops_set_msg_exchange_pattern 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_char_t *pattern)
+axis2_status_t AXIS2_CALL 
+axis2_operation_set_msg_exchange_pattern (axis2_operation_t *operation, 
+                                            axis2_env_t **env,
+		                                    axis2_char_t *pattern)
 {
-	if(!operation_desc)
-	{
-		return AXIS2_ERROR_INVALID_NULL_PARAM;		
-	}
-	operation_desc->msg_exchange_pattern = axis2_strdup(pattern);
-	if(!operation_desc->msg_exchange_pattern)
-		return AXIS2_ERROR_NO_MEMORY;
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FAILURE);
+	AXIS2_INTF_TO_IMPL(operation)->msg_exchange_pattern = axis2_strdup(pattern);
+	if(NULL == AXIS2_INTF_TO_IMPL(operation)->msg_exchange_pattern)
+        AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+		
 	return AXIS2_SUCCESS;
 }
 
-axis2_char_t *axis2_description_operation_ops_get_msg_exchange_pattern 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
-{
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
-	return operation_desc->msg_exchange_pattern;
-}
-
-axis2_status_t axis2_description_operation_ops_set_msg_receiver 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env
-		, axis2_engine_msg_receiver_t *msg_receiver)
-{
-	if(!operation_desc)
-	{
-		return AXIS2_ERROR_INVALID_NULL_PARAM;		
-	}
-	operation_desc->msg_receiver = msg_receiver;
-	if(!operation_desc->msg_receiver)
-		return AXIS2_ERROR_NO_MEMORY;
+axis2_char_t * AXIS2_CALL
+axis2_operation_get_msg_exchange_pattern (axis2_operation_t *operation, 
+                                            axis2_env_t **env)
+{
+    AXIS2_FUNC_PARAM_CHECK(operation, env, NULL);
+	return AXIS2_INTF_TO_IMPL(operation)->msg_exchange_pattern;
+}
+
+axis2_status_t AXIS2_CALL 
+axis2_operation_set_msg_recv (axis2_operation_t *operation, 
+                                axis2_env_t **env,
+		                        axis2_engine_msg_recv_t *msg_recv)
+{
+    AXIS2_FUNC_PARAM_CHECK(operation, env, AXIS2_FAILURE);
+    AXIS2_PARAM_CHECK(env, msg_recv, AXIS2_FAILURE);
+	AXIS2_INTF_TO_IMPL(operation)->msg_recv = msg_recv;
+	
 	return AXIS2_SUCCESS;
 }
 
-axis2_engine_msg_receiver_t *axis2_description_operation_ops_get_msg_receiver 
-		(axis2_description_operation_t *operation_desc, axis2_env_t *env)
+axis2_engine_msg_recv_t * AXIS2_CALL
+axis2_operation_get_msg_recv (axis2_operation_t *operation, 
+                                axis2_env_t **env)
 {
-	if(!operation_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
-	return operation_desc->msg_receiver;
+    AXIS2_FUNC_PARAM_CHECK(operation, env, NULL);
+    return AXIS2_INTF_TO_IMPL(operation)->msg_recv;
 }

Modified: webservices/axis2/trunk/c/modules/core/description/src/param_container.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/src/param_container.c?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/src/param_container.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/src/param_container.c Sun Nov  6 18:23:20 2005
@@ -16,11 +16,10 @@
  
 #include <axis2_param_container.h>
 
-/** @struct axis2_param_container_impl
-  * @brief DESCRIPTION axis2_param_container_impl struct
-  *	Container of params. 
-  *  
-*/  
+/** 
+ * @brief Param container struct impl
+ *	Container for params  
+ */ 
 typedef struct axis2_param_container_impl_s
 {
 	axis2_param_container_t param_container;
@@ -68,20 +67,12 @@
 	
 	
 	if(NULL == param_container_impl)
-	{
-		AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_NO_MEMORY);
-        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE);
-		return NULL;
-	}
+        AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL); 
 	
 	axis2_param_container_ops_t *ops = 
 		AXIS2_MALLOC ((*env)->allocator, sizeof(axis2_param_container_ops_t));
 	if(NULL == ops)
-	{
-		AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_NO_MEMORY);
-        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE);
-		return NULL;
-	}
+		AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL);
 	ops->free =  axis2_param_container_free;
 	ops->add_param =  axis2_param_container_add_param;
 	ops->get_param =  axis2_param_container_get_param;
@@ -91,13 +82,8 @@
 	param_container_impl->param_container.ops = ops;
 				
 	param_container_impl->params = axis2_hash_make (env);
-	
 	if(NULL == param_container_impl->params)
-	{
-		AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error, AXIS2_ERROR_NO_MEMORY);
-        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE);
-		return NULL;			
-	}	
+		AXIS2_ERROR_HANDLE(env, AXIS2_ERROR_NO_MEMORY, NULL);	
 	
 	return &(param_container_impl->param_container);
 }
@@ -125,13 +111,8 @@
 					axis2_param_t *param)
 {
 	AXIS2_FUNC_PARAM_CHECK(param_container, env, AXIS2_FAILURE);
-	if(NULL == param)
-	{
-		AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error
-			, AXIS2_ERROR_INVALID_NULL_PARAM);
-        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE);
-		return AXIS2_ERROR_INVALID_NULL_PARAM;
-	}
+    AXIS2_PARAM_CHECK(env, param, AXIS2_FAILURE);
+	
 	if (NULL == (AXIS2_INTF_TO_IMPL(param_container)->params))
 	{                    
 		AXIS2_INTF_TO_IMPL(param_container)->params = axis2_hash_make (env);
@@ -175,14 +156,7 @@
 		(axis2_hash_get (AXIS2_INTF_TO_IMPL(param_container)->params
 			, axis2_strdup(param_name), AXIS2_HASH_KEY_STRING));
 	
-	if(NULL == param)
-	{
-		AXIS2_ERROR_SET_ERROR_NUMBER((*env)->error
-			, AXIS2_ERROR_INVALID_NULL_PARAM);
-        AXIS2_ERROR_SET_STATUS_CODE((*env)->error, AXIS2_FAILURE);
-		
-		return AXIS2_ERROR_INVALID_NULL_PARAM;	
-	}
+    AXIS2_PARAM_CHECK(env, param, AXIS2_FAILURE);
 	
 	return AXIS2_PARAM_IS_LOCKED(param, env);
 }

Modified: webservices/axis2/trunk/c/modules/core/description/src/svc.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/src/svc.c?rev=331178&r1=331177&r2=331178&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/src/svc.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/src/svc.c Sun Nov  6 18:23:20 2005
@@ -1,4 +1,4 @@
-#include <axis2_description_service.h>
+#include <axis2_svc.h>
 
 typedef struct axis2_description_impl_service_s axis2_description_impl_service_t;
 	
@@ -9,9 +9,9 @@
   */
 struct axis2_description_impl_service_s
 {
-	axis2_description_service_t service;
-	axis2_description_param_include_t *param_include;
-	axis2_description_servicegroup_t *parent;
+	axis2_svc_t service;
+	axis2_param_container_t *param_container;
+	axis2_svc_grp_t *parent;
 	axis2_hash_t *wasaction_opeartionmap;
 	axis2_qname_t *name;    
 
@@ -19,107 +19,96 @@
 
 /*************************** Function headers ********************************/
 
-axis2_status_t axis2_description_service_ops_free
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
+axis2_status_t axis2_svc_ops_free
+		(axis2_svc_t *srv_desc, axis2_env_t *env);
 
-axis2_status_t axis2_description_service_ops_add_operation
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, axis2_description_operation_t *operation_desc);
-
-axis2_description_operation_t *
-		axis2_description_service_ops_get_operation_with_qname(
-		axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_status_t axis2_svc_ops_add_operation
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		, axis2_operation_t *operation_desc);
+
+axis2_operation_t *
+		axis2_svc_ops_get_operation_with_qname(
+		axis2_svc_t *srv_desc, axis2_env_t *env
 		, axis2_qname_t *operation_name);
 		
-axis2_description_operation_t *
-		axis2_description_service_ops_get_operation_with_name
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_operation_t *
+		axis2_svc_ops_get_operation_with_name
+		(axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t* operation_name);
 
-axis2_hash_t *axis2_description_service_ops_get_operations(
-		axis2_description_service_t *srv_desc, axis2_env_t *env);
+axis2_hash_t *axis2_svc_ops_get_operations(
+		axis2_svc_t *srv_desc, axis2_env_t *env);
 		
-axis2_status_t axis2_description_service_ops_set_parent
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		,axis2_description_servicegroup_t *servicegroup_desc);
+axis2_status_t axis2_svc_ops_set_parent
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		,axis2_svc_grp_t *servicegroup_desc);
 
-axis2_description_servicegroup_t *axis2_description_service_ops_get_parent
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
+axis2_svc_grp_t *axis2_svc_ops_get_parent
+		(axis2_svc_t *srv_desc, axis2_env_t *env);
 		
-axis2_qname_t *axis2_description_service_ops_get_name
-		(const axis2_description_service_t *srv_desc, axis2_env_t *env);	
+axis2_qname_t *axis2_svc_ops_get_name
+		(const axis2_svc_t *srv_desc, axis2_env_t *env);	
 
-axis2_status_t axis2_description_service_ops_add_param
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, axis2_description_param_t *param);
+axis2_status_t axis2_svc_ops_add_param
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		, axis2_param_t *param);
 
-axis2_description_param_t *axis2_description_service_ops_get_param
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_param_t *axis2_svc_ops_get_param
+		(axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t *name);
 
-axis2_hash_t *axis2_description_service_ops_get_params
-		(axis2_description_service_t *srv_desc, axis2_env_t *env);
+axis2_hash_t *axis2_svc_ops_get_params
+		(axis2_svc_t *srv_desc, axis2_env_t *env);
 
-axis2_bool_t axis2_description_service_ops_is_param_locked(
-		axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_bool_t axis2_svc_ops_is_param_locked(
+		axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t *param_name);
 		
 /************************* End of function headers ***************************/
 
-axis2_description_service_ops_t *axis2_description_service_get_ops
-		(axis2_description_service_t *srv_desc, axis2_env_t *env)
-{
-	if(NULL == srv_desc)
-	{
-		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
-		return NULL;
-	}
-	return srv_desc->ops;
-}
-
-axis2_description_service_t *axis2_description_service_create
+axis2_svc_t *axis2_svc_create
 		(axis2_env_t *env)
 {
-	axis2_description_service_t *srv_desc = (axis2_description_service_t *)
-		AXIS2_MALLOC (env->allocator, sizeof(axis2_description_service_t));
+	axis2_svc_t *srv_desc = (axis2_svc_t *)
+		AXIS2_MALLOC (env->allocator, sizeof(axis2_svc_t));
 	if(!srv_desc)
 	{
 		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
 		return NULL;
 	}
-	axis2_description_service_ops_t *ops = (axis2_description_service_ops_t *)
-		AXIS2_MALLOC (env->allocator, sizeof(axis2_description_service_ops_t));
+	axis2_svc_ops_t *ops = (axis2_svc_ops_t *)
+		AXIS2_MALLOC (env->allocator, sizeof(axis2_svc_ops_t));
 	if(!ops)
 	{
 		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
 		return NULL;	
 	}
-	ops->free = axis2_description_service_ops_free;
-	ops->add_operation = axis2_description_service_ops_add_operation;
+	ops->free = axis2_svc_ops_free;
+	ops->add_operation = axis2_svc_ops_add_operation;
 	ops->get_operation_with_qname = 
-		axis2_description_service_ops_get_operation_with_qname;
+		axis2_svc_ops_get_operation_with_qname;
 	ops->get_operation_with_name = 
-		axis2_description_service_ops_get_operation_with_name;
-	ops->get_operations = axis2_description_service_ops_get_operations;
-	ops->set_parent = axis2_description_service_ops_set_parent;
-	ops->get_parent = axis2_description_service_ops_get_parent;
-	ops->get_name = axis2_description_service_ops_get_name;
-	ops->add_param = axis2_description_service_ops_add_param;
-	ops->get_param = axis2_description_service_ops_get_param;
-	ops->get_params = axis2_description_service_ops_get_params;
+		axis2_svc_ops_get_operation_with_name;
+	ops->get_operations = axis2_svc_ops_get_operations;
+	ops->set_parent = axis2_svc_ops_set_parent;
+	ops->get_parent = axis2_svc_ops_get_parent;
+	ops->get_name = axis2_svc_ops_get_name;
+	ops->add_param = axis2_svc_ops_add_param;
+	ops->get_param = axis2_svc_ops_get_param;
+	ops->get_params = axis2_svc_ops_get_params;
 	
 	srv_desc->ops = ops;
 	
-	axis2_description_param_include_t *param_include 
-		= (axis2_description_param_include_t *)
-		axis2_description_param_include_create(env);		
-	if(!param_include)
+	axis2_param_container_t *param_container 
+		= (axis2_param_container_t *)
+		axis2_param_container_create(env);		
+	if(!param_container)
 	{
 		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
 		return NULL;
 	}
 
-	srv_desc->param_include = param_include;
+	srv_desc->param_container = param_container;
 	
 	srv_desc->parent = NULL;
 	
@@ -134,11 +123,11 @@
 	return srv_desc;	
 }
 
-axis2_description_service_t *axis2_description_service_create_with_qname
+axis2_svc_t *axis2_svc_create_with_qname
 		(axis2_env_t *env, axis2_qname_t *qname)
 {
-	axis2_description_service_t *srv_desc = 
-		axis2_description_service_create(env);
+	axis2_svc_t *srv_desc = 
+		axis2_svc_create(env);
 	if(!srv_desc)
 	{
 		env->error->error_number = AXIS2_ERROR_NO_MEMORY;
@@ -151,8 +140,8 @@
 
 /********************** Start of function implementations ********************/
 
-axis2_status_t axis2_description_service_ops_free
-		(axis2_description_service_t *srv_desc, axis2_env_t *env)
+axis2_status_t axis2_svc_ops_free
+		(axis2_svc_t *srv_desc, axis2_env_t *env)
 {
 	if(!env)
 		return AXIS2_ERROR_INVALID_NULL_PARAM;
@@ -165,9 +154,9 @@
 }
 
 
-axis2_status_t axis2_description_service_ops_add_operation
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, axis2_description_operation_t *operation_desc)
+axis2_status_t axis2_svc_ops_add_operation
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		, axis2_operation_t *operation_desc)
 {
 	if(!srv_desc || !operation_desc)
 	{
@@ -177,8 +166,8 @@
 	{                    
 		srv_desc->wasaction_opeartionmap = axis2_hash_make (env);
 	}
-	axis2_description_operation_ops_t *tempopt = 
-		(axis2_description_operation_get_ops(operation_desc, env));
+	axis2_operation_ops_t *tempopt = 
+		(axis2_operation_get_ops(operation_desc, env));
 	
 	if(!tempopt) return AXIS2_ERROR_INVALID_NULL_PARAM;
 		
@@ -197,9 +186,9 @@
 	return AXIS2_SUCCESS;
 }
 
-axis2_description_operation_t 
-		*axis2_description_service_ops_get_operation_with_qname
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_operation_t 
+		*axis2_svc_ops_get_operation_with_qname
+		(axis2_svc_t *srv_desc, axis2_env_t *env
 		, axis2_qname_t *operation_name)
 {
 	if(!srv_desc || !srv_desc->wasaction_opeartionmap)
@@ -207,15 +196,15 @@
 		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
 		return NULL;		
 	}
-	return (axis2_description_operation_t *) (axis2_hash_get 
+	return (axis2_operation_t *) (axis2_hash_get 
 		(srv_desc->wasaction_opeartionmap, operation_name->localpart
 		, AXIS2_HASH_KEY_STRING));
 	
 }	
 
-axis2_description_operation_t 
-		*axis2_description_service_ops_get_operation_with_name
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_operation_t 
+		*axis2_svc_ops_get_operation_with_name
+		(axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t* name)
 {
 	if(!srv_desc || !srv_desc->wasaction_opeartionmap)
@@ -223,13 +212,13 @@
 		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
 		return NULL;		
 	}
-	return (axis2_description_operation_t *) (axis2_hash_get 
+	return (axis2_operation_t *) (axis2_hash_get 
 		(srv_desc->wasaction_opeartionmap
 		, axis2_strdup(name), AXIS2_HASH_KEY_STRING));
 }
 
-axis2_hash_t *axis2_description_service_ops_get_operations
-		(axis2_description_service_t *srv_desc, axis2_env_t *env)
+axis2_hash_t *axis2_svc_ops_get_operations
+		(axis2_svc_t *srv_desc, axis2_env_t *env)
 {
 	if(!srv_desc)
 	{
@@ -239,9 +228,9 @@
 	return srv_desc->wasaction_opeartionmap;
 }
 	
-axis2_status_t axis2_description_service_ops_set_parent
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		,axis2_description_servicegroup_t *servicegroup_desc)
+axis2_status_t axis2_svc_ops_set_parent
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		,axis2_svc_grp_t *servicegroup_desc)
 {
 	if(!srv_desc || !servicegroup_desc)
 	{
@@ -251,8 +240,8 @@
 	return AXIS2_SUCCESS;
 }
 
-axis2_description_servicegroup_t *axis2_description_service_ops_get_parent
-		(axis2_description_service_t *srv_desc, axis2_env_t *env)
+axis2_svc_grp_t *axis2_svc_ops_get_parent
+		(axis2_svc_t *srv_desc, axis2_env_t *env)
 {
 	if(!srv_desc || !srv_desc->parent)
 	{
@@ -262,8 +251,8 @@
 	return srv_desc->parent;
 }
 
-axis2_qname_t *axis2_description_service_ops_get_name
-		(const axis2_description_service_t *srv_desc, axis2_env_t *env)
+axis2_qname_t *axis2_svc_ops_get_name
+		(const axis2_svc_t *srv_desc, axis2_env_t *env)
 {
 	if(!env || !srv_desc)
 	{
@@ -273,26 +262,26 @@
 	return srv_desc->name;
 }
 
-axis2_status_t axis2_description_service_ops_add_param
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
-		, axis2_description_param_t *param)
+axis2_status_t axis2_svc_ops_add_param
+		(axis2_svc_t *srv_desc, axis2_env_t *env
+		, axis2_param_t *param)
 {
-	if(!env || !srv_desc || !srv_desc->param_include || !param)
+	if(!env || !srv_desc || !srv_desc->param_container || !param)
 	{
 		return AXIS2_ERROR_INVALID_NULL_PARAM;
 	}
-	axis2_hash_set (axis2_description_param_include_get_params
-		(srv_desc->param_include, env), axis2_description_param_get_name(param
+	axis2_hash_set (axis2_param_container_get_params
+		(srv_desc->param_container, env), axis2_param_get_name(param
 		, env)
 		, AXIS2_HASH_KEY_STRING, param);	
 	return AXIS2_SUCCESS;
 }
 
-axis2_description_param_t *axis2_description_service_ops_get_param(
-		axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_param_t *axis2_svc_ops_get_param(
+		axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t *name)
 {
-	if(!env || !srv_desc || !srv_desc->param_include)
+	if(!env || !srv_desc || !srv_desc->param_container)
 	{
 		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
 		return NULL;
@@ -304,29 +293,29 @@
 		return NULL;
 	}
 		
-	return (axis2_description_param_t *)(axis2_hash_get 
-		(axis2_description_param_include_get_params(srv_desc->param_include, env)
+	return (axis2_param_t *)(axis2_hash_get 
+		(axis2_param_container_get_params(srv_desc->param_container, env)
 		, tempname, AXIS2_HASH_KEY_STRING));
 	
 }
 
-axis2_hash_t *axis2_description_service_ops_get_params
-		(axis2_description_service_t *srv_desc, axis2_env_t *env)
+axis2_hash_t *axis2_svc_ops_get_params
+		(axis2_svc_t *srv_desc, axis2_env_t *env)
 {
 	if(!env || !srv_desc)
 	{
 		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
 		return NULL;		
 	}
-	return axis2_description_param_include_get_params(srv_desc->param_include, env);
+	return axis2_param_container_get_params(srv_desc->param_container, env);
 	
 }
 
-axis2_bool_t axis2_description_service_ops_is_param_locked
-		(axis2_description_service_t *srv_desc, axis2_env_t *env
+axis2_bool_t axis2_svc_ops_is_param_locked
+		(axis2_svc_t *srv_desc, axis2_env_t *env
 		, const axis2_char_t *param_name)
 {
-	if(!env || !srv_desc || !srv_desc->param_include)
+	if(!env || !srv_desc || !srv_desc->param_container)
 	{
 		env->error->error_number = AXIS2_ERROR_INVALID_NULL_PARAM;
 		return AXIS2_FALSE;
@@ -338,7 +327,7 @@
 		return AXIS2_FALSE;
 	}
 		
-	return axis2_description_param_include_is_param_locked
-		(srv_desc->param_include, env, param_name); 
+	return axis2_param_container_is_param_locked
+		(srv_desc->param_container, env, param_name); 
 	
 }