Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-24 Thread Alex Rousskov
On 01/23/2014 06:23 AM, Amos Jeffries wrote: +if (size 0) { +if (!ignoreErrno(xerrno)) { +debugs(5, 2, tcp read failure: xstrerr(xerrno)); +return true; +} else if (!inBuf.hasContent()) { +debugs(5, 2, tcp : no data to process (

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-24 Thread Alex Rousskov
On 01/22/2014 06:16 PM, Amos Jeffries wrote: On 2014-01-22 18:45, Alex Rousskov wrote: The correct design depends on what our clients and servers need. I am seriously worried that you are too focused on one server now (client_side_*cc) and once you start adding more and more agents, the

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-24 Thread Alex Rousskov
On 01/23/2014 02:34 AM, Amos Jeffries wrote: On 22/01/2014 10:32 p.m., Henrik Nordström wrote: Any design that tries to make application level code (i.e. http/ftp protocol handlers etc) needing to be aware of TcpReceiver/Sender is plain wrong imho. Yes. I was loosely thinking of completing

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-23 Thread Amos Jeffries
On 23/01/2014 7:19 p.m., Eliezer Croitoru wrote: On 07/01/14 11:52, Amos Jeffries wrote: Updated patch attaced for audit. SNIP I do not see any patch in the mailing list post, Are we talking about This one with the mk2 patch actually attached.? Yes. Amos

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-23 Thread Amos Jeffries
On 22/01/2014 10:32 p.m., Henrik Nordström wrote: tis 2014-01-21 klockan 22:45 -0700 skrev Alex Rousskov: All the TCP clients and servers you are willing to include (as future TcpReceiver kids) in the current project scope have at least one thing in common -- they all read and write protocol

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-23 Thread Amos Jeffries
On 22/01/2014 6:45 p.m., Alex Rousskov wrote: On 01/07/2014 02:52 AM, Amos Jeffries wrote: Updated patch attaced for audit. This one includes all the currently known bits for server-side delay pools so no audit omissions this time around. On 4/01/2014 8:16 a.m., Alex Rousskov wrote: On

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-22 Thread Henrik Nordström
tis 2014-01-21 klockan 22:45 -0700 skrev Alex Rousskov: All the TCP clients and servers you are willing to include (as future TcpReceiver kids) in the current project scope have at least one thing in common -- they all read and write protocol messages over [persistent] TCP connections. Why do

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-22 Thread Tsantilas Christos
On 01/22/2014 07:45 AM, Alex Rousskov wrote: I can think of two very different ways to go forward from here: A) Forget about other agents, sides, etc. and focus on the HTTP server (i.e., client-side*cc) code exclusively. That code does not need a TcpReceiver. It needs a lot of work, but

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-22 Thread Amos Jeffries
On 2014-01-22 18:45, Alex Rousskov wrote: On 01/07/2014 02:52 AM, Amos Jeffries wrote: Updated patch attaced for audit. This one includes all the currently known bits for server-side delay pools so no audit omissions this time around. On 4/01/2014 8:16 a.m., Alex Rousskov wrote: On

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-22 Thread Eliezer Croitoru
On 07/01/14 11:52, Amos Jeffries wrote: Updated patch attaced for audit. SNIP I do not see any patch in the mailing list post, Are we talking about This one with the mk2 patch actually attached.? Thanks, Eliezer

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-21 Thread Alex Rousskov
On 01/07/2014 02:52 AM, Amos Jeffries wrote: Updated patch attaced for audit. This one includes all the currently known bits for server-side delay pools so no audit omissions this time around. On 4/01/2014 8:16 a.m., Alex Rousskov wrote: On 12/03/2013 10:05 PM, Amos Jeffries wrote: This

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-07 Thread Amos Jeffries
Updated patch attaced for audit. This one includes all the currently known bits for server-side delay pools so no audit omissions this time around. On 4/01/2014 8:16 a.m., Alex Rousskov wrote: On 12/03/2013 10:05 PM, Amos Jeffries wrote: This patch abstracts the TCP socket operations out of

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-07 Thread Amos Jeffries
This one with the mk2 patch actually attached. Amos === modified file 'src/comm/Makefile.am' --- src/comm/Makefile.am2012-03-29 09:22:41 + +++ src/comm/Makefile.am2013-10-16 12:14:31 + @@ -23,6 +23,8 @@ ModSelectWin32.cc \ TcpAcceptor.cc \

Re: [PATCH] client-side redesign pt1 - Comm::TcpReceiver

2014-01-03 Thread Alex Rousskov
On 12/03/2013 10:05 PM, Amos Jeffries wrote: This patch abstracts the TCP socket operations out of existing client-side code into a class which can be re-used for any TCP socket code. +namespace Comm { + +class TcpReceiver : virtual public AsyncJob +{ +public: Missing class description.

[PATCH] client-side redesign pt1 - Comm::TcpReceiver

2013-12-03 Thread Amos Jeffries
This patch abstracts the TCP socket operations out of existing client-side code into a class which can be re-used for any TCP socket code. It provides: * data members for referencing a TCP socket and read buffer. * methods for incremental parsing or processing of recieved data. * methods for