You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2007/10/02 09:27:18 UTC

svn commit: r581149 - in /webservices/axis2/trunk/c/util: include/axutil_env.h src/env.c

Author: samisa
Date: Tue Oct  2 00:27:17 2007
New Revision: 581149

URL: http://svn.apache.org/viewvc?rev=581149&view=rev
Log:
Fixed formatting and logic

Modified:
    webservices/axis2/trunk/c/util/include/axutil_env.h
    webservices/axis2/trunk/c/util/src/env.c

Modified: webservices/axis2/trunk/c/util/include/axutil_env.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/include/axutil_env.h?rev=581149&r1=581148&r2=581149&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/include/axutil_env.h (original)
+++ webservices/axis2/trunk/c/util/include/axutil_env.h Tue Oct  2 00:27:17 2007
@@ -35,11 +35,12 @@
 {
 #endif
 
-    /** @defgroup axis2_util utilities
-      * @ingroup axis2
-      * @{
-      * @}
-      */
+    /** 
+     * @defgroup axis2_util utilities
+     * @ingroup axis2
+     * @{
+     * @}
+     */
 
     struct axutil_env;
     struct axutil_env_ops;
@@ -53,7 +54,7 @@
     /**
       * \brief Axis2 Environment struct
       *
-      * Environment acts as a container for error, log, memory allocator and other
+      * Environment acts as a container for error, log, memory allocator and threading 
       * routines
       */
     typedef struct axutil_env
@@ -77,12 +78,12 @@
     axutil_env_t;
 
     /**
-    * Creates an environment struct with all of its default parts,
-    * that is an allocator, error, log and a thread pool.
-    * @param log_file name of the log file
-    * @param log_level log level to be used
-    * @return pointer to the newly created environment struct 
-    */
+     * Creates an environment struct with all of its default parts,
+     * that is an allocator, error, log and a thread pool.
+     * @param log_file name of the log file
+     * @param log_level log level to be used, default is debug
+     * @return pointer to the newly created environment struct 
+     */
     AXIS2_EXTERN axutil_env_t *AXIS2_CALL
     axutil_env_create_all(
         const axis2_char_t * log_file,
@@ -90,8 +91,8 @@
 
     /**
      * Creates an environment struct. Users of axis2 should not use this function
-    * to create an environment. He should use the other two create functions.
-     * @param allocator pointer to an instance of allocator struct. Must be non-NULL   
+     * to create an environment. He or she should use the other two create functions.
+     * @param allocator pointer to an instance of allocator struct. Must not be NULL   
      * @return pointer to the newly created environment struct 
      */
     AXIS2_EXTERN axutil_env_t *AXIS2_CALL
@@ -99,10 +100,9 @@
         axutil_allocator_t * allocator);
 
     /**
-      * Creates an environment struct
-      * @param allocator pointer to an instance of allocator struct. Must be non-NULL
-      * @param error pointer to an instance of error struct. Must be non-NULL.
-      * it would be taken as a flag for no logging.  
+      * Creates an environment struct with given error struct.
+      * @param allocator pointer to an instance of allocator struct. Must not be NULL
+      * @param error pointer to an instance of error struct. Must not be NULL
       * @return pointer to the newly created environment struct 
       */
     AXIS2_EXTERN axutil_env_t *AXIS2_CALL
@@ -111,11 +111,11 @@
         axutil_error_t * error);
 
     /**
-     * Creates an environment struct
-     * @param allocator pointer to an instance of allocator struct. Must be non-NULL
-     * @param error pointer to an instance of error struct. Must be non-NULL.
-     * @param log pointer to an instance of log struct. May be NULL. If NULL
-     * it would be taken as a flag for no logging.   
+     * Creates an environment struct with given error and log structs.
+     * @param allocator pointer to an instance of allocator struct. Must not be NULL
+     * @param error pointer to an instance of error struct. Must not be NULL
+     * @param log pointer to an instance of log struct. If NULL it would be 
+     * assumed that logging is disabled.
      * @return pointer to the newly created environment struct 
      */
     AXIS2_EXTERN axutil_env_t *AXIS2_CALL
@@ -125,16 +125,15 @@
         axutil_log_t * log);
 
     /**
-    * Creates an environment struct
-    * @param allocator pointer to an instance of allocator struct. Must be non-NULL
-    * @param error pointer to an instance of error struct. Must be non-NULL.
-    * @param log pointer to an instance of log struct. May be NULL. If NULL
-    * it would be taken as a flag for no logging.
-    * @param pool pointer to an instance of thread_pool. May be NULL. If NULL
-    * @return pointer to the newly created environment struct 
-    */
+     * Creates an environment struct with given error, log and thread pool structs.
+     * @param allocator pointer to an instance of allocator struct. Must not be NULL
+     * @param error pointer to an instance of error struct. Must not be NULL
+     * @param log pointer to an instance of log struct. If NULL it would be
+     * assumed that logging is disabled.
+     * @param pool pointer to an instance of thread_pool. Must not be NULL
+     * @return pointer to the newly created environment struct 
+     */
     AXIS2_EXTERN axutil_env_t *AXIS2_CALL
-
     axutil_env_create_with_error_log_thread_pool(
         axutil_allocator_t * allocator,
         axutil_error_t * error,
@@ -142,39 +141,37 @@
         axutil_thread_pool_t * pool);
 
     /**
-      * Creates an environment struct
-      * @param allocator pointer to an instance of allocator struct. 
-      * @param error pointer to an instance of error struct. 
-      * Optional, can be NULL. If NULL default error handler would be used.
-      * @param log pointer to an instance of log struct. Optional, can be NULL.
-      * If NULL default log handler would be used.
-      * @param string pointer to an instance of string struct. 
-      * Optional, can be NULL. If NULL default string handler would be used.
-      * @return pointer to the newly created environment struct 
-      */
+     * Frees an environment struct instance.
+     * @param env pointer to environment struct instance to be freed.
+     * @return void
+     */
     AXIS2_EXTERN void AXIS2_CALL
     axutil_env_free(
         axutil_env_t * env);
 
     /**
-    * Frees the environment
-    * @param env environment to be freed
-    * @param mask bit pattern to according to which the components of the env 
-    * struct are freed
-    *       0x1 - Frees the log
-    *       0x2 - Frees the error
-    *       0x4 - Frees the thread pool
-    *       You can use combinations to free multiple components as well
-    *       Eg : 0x3 frees both log and error
-    * @return status of the operation
-    */
+     * Frees the environment components based on the mask.
+     * @param env pointer to environment struct to be freed
+     * @param mask bit pattern indicating which components of the env 
+     * struct are to be freed
+     *       0x1 - Frees the log
+     *       0x2 - Frees the error
+     *       0x4 - Frees the thread pool
+     *       You can use combinations to free multiple components as well
+     *       Eg : 0x3 frees both log and error, but not the thread pool
+     * @return void
+     */
     AXIS2_EXTERN void AXIS2_CALL
     axutil_env_free_masked(
         axutil_env_t * env,
         char mask);
 
     /**
-     * Enables logging
+     * Enable or diable logging.
+     * @param env pointer to environment struct
+     * @param enable AXIS2_TRUE to enable logging and AXIS2_FALSE to 
+     * disable logging
+     * @return AXIS2_SUCCESS on success elase AXIS2_FAILURE
      */
     AXIS2_EXTERN axis2_status_t AXIS2_CALL
     axutil_env_enable_log(
@@ -182,18 +179,24 @@
         axis2_bool_t enable);
 
     /**
-      * Checks the status code of environment
-      */
+     * Checks the status code of environment stroed within error struct.
+     * @param env pointer to environment struct
+     * @return error status code or AXIS2_CRITICAL_FAILURE in case of
+     * a failure
+     */
     AXIS2_EXTERN axis2_status_t AXIS2_CALL
     axutil_env_check_status(
         const axutil_env_t * env);
 
-    /*#define AXIS2_ENV_CHECK(env, error_return) \
+/* AXIS2_ENV_CHECK is a macro to check environment pointer.
+   Currently this is set to an empty value.
+   But it was used to be defined as:
+   #define AXIS2_ENV_CHECK(env, error_return) \
        if(!env) \
        { \
-       return error_return; \
-       } */
-
+           return error_return; \
+       }
+*/
 #define AXIS2_ENV_CHECK(env, error_return)
 
     /** @} */
@@ -203,3 +206,4 @@
 #endif
 
 #endif                          /* AXIS2_ENV_H */
+

Modified: webservices/axis2/trunk/c/util/src/env.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/env.c?rev=581149&r1=581148&r2=581149&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/src/env.c (original)
+++ webservices/axis2/trunk/c/util/src/env.c Tue Oct  2 00:27:17 2007
@@ -39,20 +39,25 @@
 
     if (log_file)
         log = axutil_log_create(allocator, NULL, log_file);
-    else
-        log = axutil_log_create_default(allocator);
 
+    /* if log file name was not given or the log could not be create with 
+       given name, create default log */
     if (!log)
         log = axutil_log_create_default(allocator);
 
     thread_pool = axutil_thread_pool_init(allocator);
+    
     env =
         axutil_env_create_with_error_log_thread_pool(allocator, error, log,
                                                      thread_pool);
     if (env->log)
     {
-        env->log->level = log_level;
+        if (AXIS2_LOG_LEVEL_TRACE <= log_level && log_level <= AXIS2_LOG_LEVEL_TRACE)
+            env->log->level = log_level;
+        else
+            env->log->level = AXIS2_LOG_LEVEL_DEBUG; /* default log level is debug */
     }
+
     axutil_error_init();
 
     return env;
@@ -64,33 +69,34 @@
 {
     axutil_allocator_t *allocator = NULL;
 
-    if (env && env->allocator)
-        allocator = env->allocator;
+    if (!env)
+        return;
+
+    allocator = env->allocator;
 
-    if (env && env->log)
+    if (env->log)
     {
         AXIS2_LOG_FREE(env->allocator, env->log);
-        env->log = NULL;
     }
-    if (env && env->error)
+    
+    if (env->error)
     {
         AXIS2_ERROR_FREE(env->error);
-        env->error = NULL;
     }
-    if (env && env->thread_pool)
+    
+    if (env->thread_pool)
     {
         axutil_thread_pool_free(env->thread_pool);
-        env->thread_pool = NULL;
     }
-    if (env && env->allocator)
+    
+    if (env->allocator)
     {
         AXIS2_FREE(env->allocator, env);
-        env = NULL;
     }
+    
     if (allocator)
     {
         AXIS2_FREE(allocator, allocator);
-        allocator = NULL;
     }
 
     return;
@@ -100,30 +106,32 @@
 axutil_env_create(
     axutil_allocator_t * allocator)
 {
-    axutil_env_t *environment;
-    axutil_log_t *log = NULL;
+    axutil_env_t *env;
 
     if (!allocator)
         return NULL;
 
-    environment =
+    env =
         (axutil_env_t *) AXIS2_MALLOC(allocator, sizeof(axutil_env_t));
 
-    if (!environment)
+    if (!env)
         return NULL;
 
-    log = axutil_log_create_default(allocator);
+    memset(env, 0, sizeof(axutil_env_t));
+
+    env->log = axutil_log_create_default(allocator);
 
-    environment->allocator = allocator;
+    env->allocator = allocator;
 
     /* Create default error */
-    environment->error = axutil_error_create(allocator);
-    if (!environment->error)
+    env->error = axutil_error_create(allocator);
+    if (!env->error)
+    {
+        AXIS2_FREE(allocator, env);
         return NULL;
-    environment->log = log;
-    environment->thread_pool = NULL;
-    return environment;
-
+    }
+    
+    return env;
 }
 
 AXIS2_EXTERN axutil_env_t *AXIS2_CALL
@@ -140,34 +148,36 @@
     axutil_error_t * error,
     axutil_log_t * log)
 {
-    axutil_env_t *environment;
+    axutil_env_t *env;
     if (!allocator)
         return NULL;
     if (!error)
         return NULL;
 
-    environment =
+    env =
         (axutil_env_t *) AXIS2_MALLOC(allocator, sizeof(axutil_env_t));
 
-    if (!environment)
+    if (!env)
         return NULL;
 
-    environment->allocator = allocator;
-    environment->error = error;
+    memset(env, 0, sizeof(axutil_env_t));
+
+    env->allocator = allocator;
+    env->error = error;
 
     if (!log)
     {
-        environment->log_enabled = AXIS2_FALSE;
+        env->log_enabled = AXIS2_FALSE;
     }
     else
     {
-        environment->log_enabled = AXIS2_TRUE;
-        environment->log = log;
+        env->log_enabled = AXIS2_TRUE;
+        env->log = log;
     }
 
-    environment->thread_pool = NULL;
     axutil_error_init();
-    return environment;
+
+    return env;
 }
 
 AXIS2_EXTERN axutil_env_t *AXIS2_CALL
@@ -177,39 +187,40 @@
     axutil_log_t * log,
     axutil_thread_pool_t * pool)
 {
-    axutil_env_t *environment;
-    if (!allocator)
-        return NULL;
-    if (!error)
-        return NULL;
-    if (!pool)
+    axutil_env_t *env;
+    if (!allocator || !error || !pool)
         return NULL;
 
-    environment =
+    env =
         (axutil_env_t *) AXIS2_MALLOC(allocator, sizeof(axutil_env_t));
 
-    if (!environment)
+    if (!env)
         return NULL;
+    
+    memset(env, 0, sizeof(axutil_env_t));
 
-    environment->allocator = allocator;
-    environment->error = error;
-    environment->thread_pool = pool;
+    env->allocator = allocator;
+    env->error = error;
+    env->log = log;
+    env->thread_pool = pool;
 
-    if (!log)
-        environment->log_enabled = AXIS2_FALSE;
-    environment->log_enabled = AXIS2_TRUE;
-    environment->log = log;
+    if (env->log)
+        env->log_enabled = AXIS2_FALSE;
+    else
+        env->log_enabled = AXIS2_TRUE;
+    
 
-    return environment;
+    return env;
 }
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
 axutil_env_check_status(
     const axutil_env_t * env)
 {
-    AXIS2_ENV_CHECK(env, AXIS2_CRITICAL_FAILURE);
+    if (env && env->error)
+        return AXIS2_ERROR_GET_STATUS_CODE(env->error);
 
-    return AXIS2_ERROR_GET_STATUS_CODE(env->error);
+    return AXIS2_CRITICAL_FAILURE;
 }
 
 AXIS2_EXTERN axis2_status_t AXIS2_CALL
@@ -217,11 +228,13 @@
     axutil_env_t * env,
     axis2_bool_t enable)
 {
-    AXIS2_ENV_CHECK(env, AXIS2_CRITICAL_FAILURE);
-
-    env->log_enabled = enable;
+    if (env)
+    {
+        env->log_enabled = enable;
+        return AXIS2_SUCCESS;
+    }
 
-    return AXIS2_SUCCESS;
+    return AXIS2_CRITICAL_FAILURE;
 }
 
 AXIS2_EXTERN void AXIS2_CALL
@@ -241,8 +254,10 @@
     {
         axutil_thread_pool_free(env->thread_pool);
     }
+
     if (env)
         AXIS2_FREE(env->allocator, env);
 
     return;
 }
+



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org