[ https://issues.apache.org/jira/browse/AXIS2C-723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12608875#action_12608875 ]
Senaka Fernando commented on AXIS2C-723: ---------------------------------------- Hi Danushka, Damitha, Take this scenario: "I have a transport sender OR receiver implemented, say JMS (I'm taking this example since it is not already there). I should be able to add my library along with a definition in the axis2 configuration (as in comment #Damitha Kumarage - 26/Jun/08 06:05 AM)." Resolving this issue would need to satisfy this requirement. At the moment we need to do one more step. That is to add the name of the transport to the axis2_const.h. And, this behavior requires a user to rebuild Axis2/C if he/she needs to add a new transport. THIS IS NOT ACCEPTABLE. Thus, we need a fix. Regards, Senaka > add new transport in Axis2/C > ---------------------------- > > 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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]