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 "nadir amra (JIRA)" <ji...@apache.org> on 2010/06/01 19:17:41 UTC

[jira] Updated: (AXIS2C-723) Should dynamically resolve to transport

     [ https://issues.apache.org/jira/browse/AXIS2C-723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nadir amra updated AXIS2C-723:
------------------------------

    Summary: Should dynamically resolve to transport  (was: add new transport in Axis2/C)

Change title to reflect what is needed.  

Basically, if I am understanding this correctly, Axis2/C should dynamically resolve to the transport library based on information in the axis2.xml file.   The assumption is that the configuration file will contain the name of the transport library to use. 



> Should dynamically resolve to transport
> ---------------------------------------
>
>                 Key: AXIS2C-723
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-723
>             Project: Axis2-C
>          Issue Type: Improvement
>          Components: core/transport
>    Affects Versions: 1.1.0
>         Environment: OS:WindowsXP
>            Reporter: Atsushi Monna
>            Assignee: Damitha Kumarage
>
> I have a desire for new trasnport in Axis2/C.
> I found a hard cording the transports in axis2_const.h like this.
> #define AXIS2_TRANSPORT_HTTP "http"
> #define AXIS2_TRANSPORT_SMTP "smtp"
> #define AXIS2_TRANSPORT_TCP "tcp"
> #define AXIS2_TRANSPORT_XMPP "xmpp"
> #define AXIS2_TRANSPORT_HTTPS "https"
> typedef enum
> {
>     AXIS2_TRANSPORT_ENUM_HTTP = 0,
>     AXIS2_TRANSPORT_ENUM_SMTP,
>     AXIS2_TRANSPORT_ENUM_TCP,
>     AXIS2_TRANSPORT_ENUM_XMPP,
>     AXIS2_TRANSPORT_ENUM_HTTPS,
>     AXIS2_TRANSPORT_ENUM_MAX
> } AXIS2_TRANSPORT_ENUMS;
> And using like this.
>     /**
>      * Adds a transport in description.
>      * @param conf pointer to conf struct
>      * @param env pointer to environment struct
>      * @param transport  pointer to transport in description. conf assumes
>      * ownership of the struct
>      * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
>      */
>     AXIS2_EXTERN axis2_status_t AXIS2_CALL
>     axis2_conf_add_transport_in(axis2_conf_t *conf,
>         const axutil_env_t *env,
>         axis2_transport_in_desc_t *transport,
>         const AXIS2_TRANSPORT_ENUMS trans_enum);
> If we want to add a new transport, we must defin a transport in axis2_const.h and re-build Axis2/C modules.
> In Axis2 (Java), we don't need to re-build Axis2 modules, if we think so.
> We can only provid a class implemented TransportProvider I/F and add a entry at axis2.xml file.
> Axis2 said in key features, engine is completely transport-independent at "Transport Fremework".
> I think the realization like Axis2 is advisable.

-- 
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: c-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: c-dev-help@axis.apache.org