axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Senaka Fernando (JIRA)" <>
Subject [jira] Updated: (AXIS2C-243) utils have dependancies on axis2 core when it comes to class loading
Date Sat, 22 Dec 2007 12:15:43 GMT


Senaka Fernando updated AXIS2C-243:

    Attachment: axis2_core_dll_desc.h

Hi Damitha, Dinesh and Samisa,

I have added a new include, axis2_core_dll_desc.h to overcome this issue. I have also included
axis2_core_dll_desc.h as a core utility in axis2_core_utils.h.

Also, instead of using strings I have used integers, and therefore avoiding issues with memory
allocations etc. I have used the range 10000-10999 for defining dll names, and the block 10000-10100
is reserved for the core. I have chosen the 10000+ range to ensure the unique identification,
instead of using 0-999.

Please refer diff.txt and axis2_core_dll_desc.h for proposed patch.


> utils have dependancies on axis2 core when it comes to class loading
> --------------------------------------------------------------------
>                 Key: AXIS2C-243
>                 URL:
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: util
>    Affects Versions: Current (Nightly)
>            Reporter: Damitha Kumarage
>            Assignee: Sanjaya Ratnaweera
>         Attachments: axis2_core_dll_desc.h, diff.txt
>  At the moment
> we have this in util/include/axis2_dll_desc.h.
>  typedef enum axis2_dll_type
>  {
>      /** service dll */
>      AXIS2_SVC_DLL = 0,
>      /** handler dll */
>      /** message receiver dll */
>      /** module dll */
>      /** transport receiver dll */
>      /** transport sender dll */
>         }axis2_dll_type_t;
> This is a layering violation.  The util layer
> should contain low-level stuff that doesn't depend on the core. This
> list of DLL types, although it is in util, conceptually is describing an
> aspect of core (the kinds of DLL that core can load).  If you changed
> the structure of core or even some other module (for example  dynamically loading 
> security modules), then you would have to modify util.
> The right solution is just to make the dll type be a string.
> The util layer knows only hat it's a string, but doesn't know what the
> legal string values are.  The core layer would then define constants for
> the kinds of DLLs it needs (eg "svc" for the AXIS2_SVC_DLL), and the
> security layer can do likewise.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message