You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Roland Weber (JIRA)" <ji...@apache.org> on 2007/07/15 11:44:04 UTC

[jira] Created: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

introduce HttpRoutePlanner interface
------------------------------------

                 Key: HTTPCLIENT-669
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
             Project: HttpComponents HttpClient
          Issue Type: Improvement
          Components: HttpClient, HttpConn
            Reporter: Roland Weber


Define an interface to determine a route for a given target host.
Create default implementation replacing DefaultHttpClient.determineRoute(...);
Implementations will need access to params and/or request.

The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
Either move parameters to HttpConn, or keep default implementation in HttpClient.

Alternative implementations could evaluate Java system properties related to proxy settings.



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


[jira] Commented: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Roland Weber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12514755 ] 

Roland Weber commented on HTTPCLIENT-669:
-----------------------------------------

Hi Andrea,

yes, you've definitely got the spirit right :-) Thanks a lot.

If you could make one more tweak to it: instead of passing the planner to the constructor of the HttpClient implementations, could you use the default instantiation strategy that Oleg has implemented for the other helper objects?

I'm about to wrap it up for today and will be offline tomorrow evening. If Oleg doesn't check it in, I'll do it later this week.
This issue should remain open though, as there are a fews things left to figure out. In particular, I don't like the dependency of the route planner on the connection manager. It needs the scheme registry though. I'm afraid there might be a bigger design problem lurking behind.

thanks again,
  Roland


> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Resolved: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Roland Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Roland Weber resolved HTTPCLIENT-669.
-------------------------------------

    Resolution: Fixed

I've moved DefaultHttpRoutePlanner from client to conn, along with the DEFAULT_PROXY parameter.

> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>            Assignee: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch, secondImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Updated: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Andrea Selva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrea Selva updated HTTPCLIENT-669:
------------------------------------

    Attachment: secondImpl.patch

Hi,
this patch has the fix you suggested...and is more smartinsted of passing the parameter to the constructor
Thanks for the suggest
 Andrea

> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch, secondImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Updated: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Roland Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Roland Weber updated HTTPCLIENT-669:
------------------------------------

    Fix Version/s: 4.0 Alpha 2

> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Assigned: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Roland Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Roland Weber reassigned HTTPCLIENT-669:
---------------------------------------

    Assignee: Roland Weber

> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>            Assignee: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch, secondImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Commented: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Roland Weber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12515766 ] 

Roland Weber commented on HTTPCLIENT-669:
-----------------------------------------

Hi Andrea,

I had to made a few modifications before committing your patch. Technically, the problem was that your additions to HttpConn were depending on HttpClient, which is something I'd prefer to avoid.
- HttpRoutePlanner returns a route, not a routed request
- default implementation currently in client, it still depends on a constant defined in HttpClientParams
- attribute in AbstractHttpClient is private and accessed via getter, to ensure initialization
- added license headers

I had to remove the @author tags for now, since your CLA is not on file. I'll put them in when your name is listed here:
http://people.apache.org/~jim/committers.html#unlistedclas

Thanks a lot for this contribution,
  Roland


> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch, secondImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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


[jira] Updated: (HTTPCLIENT-669) introduce HttpRoutePlanner interface

Posted by "Andrea Selva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrea Selva updated HTTPCLIENT-669:
------------------------------------

    Attachment: firstImpl.patch

Hi, Roland
this could be a starting point for this issue, i hope, if i've cirrectly undestood the spirit.

 Andrea

> introduce HttpRoutePlanner interface
> ------------------------------------
>
>                 Key: HTTPCLIENT-669
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-669
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient, HttpConn
>            Reporter: Roland Weber
>             Fix For: 4.0 Alpha 2
>
>         Attachments: firstImpl.patch
>
>
> Define an interface to determine a route for a given target host.
> Create default implementation replacing DefaultHttpClient.determineRoute(...);
> Implementations will need access to params and/or request.
> The interface fits into HttpConn, but DHC.dR(...) uses client parameters.
> Either move parameters to HttpConn, or keep default implementation in HttpClient.
> Alternative implementations could evaluate Java system properties related to proxy settings.

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