On Sun, May 23, 2010 at 19:14, Hiranya Jayathilaka <[email protected]> wrote:
> Hi Andreas,
>
> I didn't quite understand the problem caused by adding this dependency.
> Could you please explain it a little more?

Having a dependency between the classes in
org.apache.axis2.transport.base.datagram and SocketAddress is a
violation of the design as would be a dependency between
AbstractTransportListener and javax.jms.ConnectionFactory.

> SocketAddress is a high level abstract class. The widely used
> InetSocketAddress class is derived from that. IMO almost any transport can
> make use of that.

No, the pipe transport in Synapse is based on
org.apache.axis2.transport.base.datagram and for this one,
SocketAddress has no meaning.

> If not they can simply pass null.

Yes, we could also add a javax.jms.ConnectionFactory attribute in
AbstractTransportListener and let all transport except the JMS
transport set it to null :-)

> Or we can even introduce
> a new receive method to the AbstractDatagramTransportListener class which
> does not accept a SocketAddress argument. WDYT?

I haven't looked into the reasons for the appearance of SocketAddress
in that code, so I don't know yet what is the correct way to get rid
of it.

> Thanks,
> Hiranya
>
> On Sun, May 23, 2010 at 8:30 PM, Andreas Veithen (JIRA) 
> <[email protected]>wrote:
>
>> Change in r887108 breaks design of org.apache.axis2.transport.base.datagram
>> ---------------------------------------------------------------------------
>>
>>                 Key: WSCOMMONS-543
>>                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-543
>>             Project: WS-Commons
>>          Issue Type: Bug
>>          Components: Transport
>>            Reporter: Andreas Veithen
>>            Priority: Blocker
>>             Fix For: Transports 1.1
>>
>>
>> The change in r887108 [1] introduced a dependency between
>> AbstractDatagramTransportListener and SocketAddress. This badly breaks the
>> design of the classes in org.apache.axis2.transport.base.datagram, since
>> they are not only used for UDP (which is the only derived transport that
>> uses SocketAddress). See also [2] and [3]. This needs to be fixed for the
>> next release.
>>
>> [1] http://svn.apache.org/viewvc?rev=887108&view=rev
>> [2] http://markmail.org/thread/ancuyeuxefi6ttnn
>> [3] http://markmail.org/message/nls3mpg2g4ec3uq5
>>
>> --
>> This message is automatically generated by JIRA.
>> -
>> You can reply to this email to add a comment to the issue online.
>>
>>
>
>
> --
> Hiranya Jayathilaka
> Senior Software Engineer;
> WSO2 Inc.;  http://wso2.org
> E-mail: [email protected];  Mobile: +94 77 633 3491
> Blog: http://techfeast-hiranya.blogspot.com
>

Reply via email to