You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by Oleg Kalnichevski <ol...@apache.org> on 2006/08/02 12:03:21 UTC

[HttpComponents] fold HttpNIO into HttpCore

Folks,

I have started working on NIO extensions to HttpCore. So far it looks
like there will be fairly little code involved and there will be
virtually no changes to the protocol layer of HttpCore required. This
leads me to believe that HttpNIO as a separate module with an separate
release cycle does not actually make any sense.  

My Evil(tm) Plan is to introduce an additional module to HttpCore SVN
project in order to keep Java 1.4 dependent NIO extensions separate from
the rest of HttpCore that requires Java 1.3 only. Maven2 fully support
multi-module projects and conditional compilation based on JDK version.
This way Java 1.3 could still compile a fully functional Java 1.3
version HttpCore without NIO extensions.

What do you think?

Oleg


---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by sebb <se...@gmail.com>.
On 03/08/06, Oleg Kalnichevski <ol...@apache.org> wrote:
> On Thu, 2006-08-03 at 09:20 +0200, Ortwin Glück wrote:
> >
> > sebb wrote:
> > > Probably also need to change the JVM bootstrap jars to 1.3?
> >
> > Hm... You got a point there. Sounds very hackish.
> >

But if you are only trying to show that the code compiles without
errors, then a hack is probably OK...

>
> I am afraid this is as good as it gets. I still have to see if Maven2
> allows for Java platform level on a per module basis. That would solve
> the problem.
>
> Oleg
>
> > Odi
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Oleg Kalnichevski <ol...@apache.org>.
On Thu, 2006-08-03 at 09:20 +0200, Ortwin Glück wrote:
> 
> sebb wrote:
> > Probably also need to change the JVM bootstrap jars to 1.3?
> 
> Hm... You got a point there. Sounds very hackish.
> 

I am afraid this is as good as it gets. I still have to see if Maven2
allows for Java platform level on a per module basis. That would solve
the problem. 

Oleg

> Odi
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Ortwin Glück <od...@odi.ch>.

sebb wrote:
> Probably also need to change the JVM bootstrap jars to 1.3?

Hm... You got a point there. Sounds very hackish.

Odi

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by sebb <se...@gmail.com>.
On 02/08/06, Roland Weber <ht...@dubioso.net> wrote:
> Hi Oleg,
>
> > The latter would be probably be the easiest approach. I can hardly think
> > of any reason to run Java 1.3 these days outside the embedded space.
>
> sounds good
>
> > The only catch is the release prime would have to verify, though, that
> > HttpCore does compile against JDK 1.3 when cutting a new release
>
> It should be possible to add a 1.3 compile run to the "verify" step
> of the Maven life cycle. Maybe not with a JDK 1.3, but with a JDK 1.4
> switched to 1.3 compatibility mode.
>

Probably also need to change the JVM bootstrap jars to 1.3?

> cheers,
>   Roland
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Roland Weber <ht...@dubioso.net>.
Hi Oleg,

> The latter would be probably be the easiest approach. I can hardly think
> of any reason to run Java 1.3 these days outside the embedded space. 

sounds good

> The only catch is the release prime would have to verify, though, that
> HttpCore does compile against JDK 1.3 when cutting a new release

It should be possible to add a 1.3 compile run to the "verify" step
of the Maven life cycle. Maybe not with a JDK 1.3, but with a JDK 1.4
switched to 1.3 compatibility mode.

cheers,
  Roland

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Oleg Kalnichevski <ol...@apache.org>.
On Wed, 2006-08-02 at 18:44 +0200, Roland Weber wrote:
> Hi Oleg,
> 
> > My Evil(tm) Plan is to introduce an additional module to HttpCore SVN
> > project in order to keep Java 1.4 dependent NIO extensions separate from
> > the rest of HttpCore that requires Java 1.3 only. Maven2 fully support
> > multi-module projects and conditional compilation based on JDK version.
> > This way Java 1.3 could still compile a fully functional Java 1.3
> > version HttpCore without NIO extensions.
> 
> What does that mean in terms of deliverable JARs? A single JAR with
> core classes compiled by 1.3 and NIO classes compiled by 1.4? Or two
> JARs, one with only the core classes compiled by 1.3 and one with
> core and NIO classes compiled by 1.4? Or two JARs, one with the core
> classes compiled by 1.3 and one with only the NIO classes compiled
> by 1.4? Or a single JAR with both compiled by 1.4, and whoever needs
> a 1.3 version compiles their own?
> 

Hi Roland,

The latter would be probably be the easiest approach. I can hardly think
of any reason to run Java 1.3 these days outside the embedded space. 

The only catch is the release prime would have to verify, though, that
HttpCore does compile against JDK 1.3 when cutting a new release

Cheers

Oleg

> I am in favor of having only one release cycle for both.
> 
> cheers,
>   Roland
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Roland Weber <ht...@dubioso.net>.
Hi Oleg,

> My Evil(tm) Plan is to introduce an additional module to HttpCore SVN
> project in order to keep Java 1.4 dependent NIO extensions separate from
> the rest of HttpCore that requires Java 1.3 only. Maven2 fully support
> multi-module projects and conditional compilation based on JDK version.
> This way Java 1.3 could still compile a fully functional Java 1.3
> version HttpCore without NIO extensions.

What does that mean in terms of deliverable JARs? A single JAR with
core classes compiled by 1.3 and NIO classes compiled by 1.4? Or two
JARs, one with only the core classes compiled by 1.3 and one with
core and NIO classes compiled by 1.4? Or two JARs, one with the core
classes compiled by 1.3 and one with only the NIO classes compiled
by 1.4? Or a single JAR with both compiled by 1.4, and whoever needs
a 1.3 version compiles their own?

I am in favor of having only one release cycle for both.

cheers,
  Roland

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org


Re: [HttpComponents] fold HttpNIO into HttpCore

Posted by Ortwin Glück <od...@odi.ch>.
Hi Oleg,

It's true that we have agreed [1] on 1.3 for HttpCore and 1.4 for NIO. 
So it makes sense to put the NIO code into a separate code directory.

That the NIO code will be small in size, doesn't come as a surprise to 
me. And I absolutely agree that it doesn't make sense to put it under a 
separately release cycle.

hack on

Odi

[1] 
http://wiki.apache.org/jakarta-httpclient/HttpClientApiRedesign?action=recall&rev=30

Oleg Kalnichevski wrote:
> Folks,
> 
> I have started working on NIO extensions to HttpCore. So far it looks
> like there will be fairly little code involved and there will be
> virtually no changes to the protocol layer of HttpCore required. This
> leads me to believe that HttpNIO as a separate module with an separate
> release cycle does not actually make any sense.  
> 
> My Evil(tm) Plan is to introduce an additional module to HttpCore SVN
> project in order to keep Java 1.4 dependent NIO extensions separate from
> the rest of HttpCore that requires Java 1.3 only. Maven2 fully support
> multi-module projects and conditional compilation based on JDK version.
> This way Java 1.3 could still compile a fully functional Java 1.3
> version HttpCore without NIO extensions.
> 
> What do you think?
> 
> Oleg
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org
> 

-- 
[web]  http://www.odi.ch/
[blog] http://www.odi.ch/weblog/
[pgp]  key 0x81CF3416
        finger print F2B1 B21F F056 D53E 5D79 A5AF 02BE 70F5 81CF 3416

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org