Ok. I'll try to finalize the parts I've started so far, and I will post them somewhere so you can check it out and move on setting things up.
Thanks, HTTP_Request2 is long overdue, hope this time we'll be able to come up with something. :]
Ok, as promised here's the work I've done so far on HTTP_Request2:
http://code.google.com/p/izi-sandbox/source/browse/#svn/trunk
I took parts/ideas from pear2::HTTP_Request2, Zend fw and pear1::HTTP_Request, the result is 4 individual packages:
- HTTP_Common (include a HTTP Message abstract class and Headers container class);
- HTTP_Connection: this is where the "adapters" live (I still think that adapters are not a good idea though...);
- HTTP_Request2;
- HTTP_Response2.
the current implementation should support without problems:
- chunked/gzip/deflate response,
- keep-alive connections,
- redirects,
- subject/observer pattern,
- etc...
There are many things left todo (see @todo or FIXME's in the code, and others things I've forgotten or I didn't think about), so I invite anyone interested in checking out the code, review it, test, fix etc...
I can add googlecode accounts for people willing to collaborate, or we can just move to pear CVS or SVN, I really don't care.
There's a test suite base, but we need a lot more... part of the test suite is based on my personal server, so tests probably won't work if the server change (see the "test_server" directory in the trunk).
Note that some parts of the code are copy/paste/adapted from others implementations, so I need to add @author/@copyright tags where relevant (this will be done of course, just didn't had time...).
--
David