You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Senaka Fernando (JIRA)" <ji...@apache.org> on 2007/12/22 13:45:43 UTC
[jira] Issue Comment Edited: (AXIS2C-243) utils have dependancies
on axis2 core when it comes to class loading
[ https://issues.apache.org/jira/browse/AXIS2C-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12554107 ]
senakafdo edited comment on AXIS2C-243 at 12/22/07 4:45 AM:
------------------------------------------------------------------
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-10099 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.
Regards,
Senaka
was (Author: senakafdo):
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.
Regards,
Senaka
> utils have dependancies on axis2 core when it comes to class loading
> --------------------------------------------------------------------
>
> Key: AXIS2C-243
> URL: https://issues.apache.org/jira/browse/AXIS2C-243
> 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 */
> AXIS2_HANDLER_DLL,
> /** message receiver dll */
> AXIS2_MSG_RECV_DLL,
> /** module dll */
> AXIS2_MODULE_DLL,
> /** transport receiver dll */
> AXIS2_TRANSPORT_RECV_DLL,
> /** transport sender dll */
> AXIS2_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: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org