From: Gabe W. <gw...@wa...> - 2002-03-08 02:58:39
|
Guys- Can someone remind me of why MessageStatus exists? It seems to add a replylistener and status to a message, and then seems to (I believe in error) associate separate channel, data, and answerno with the underlying message. Is the MessageStatus cruft or what? I am going to whack it and move everything into the Message unless I hear something very soon. I'm trying to get channel to work, and mostly that means untangling sentToPeer to work with my architecture. MessageStatus is deeply woven in there and its time to figure out if we need it. -Gabe -- Gabe Wachob gw...@wa... Personal http://www.wachob.com CTO, WiredObjects http://www.wiredobjects.com |
From: Gabe W. <gw...@wa...> - 2002-03-08 03:24:27
|
Answering my own question, please confirm: It appears that MessageStatus is *just* for keeping track of which messages have been sent for the purposes of verifying things like "does this incoming RPY correspond to a previously sent outoing MSG?", and as such, we need to keep the following information in a MessageStatus queued up in sentMSGQueue: *status of the message (e.g. sent, responded, etc.. maybe we have to add "queued, but not completely sent") *replylistener (because someone needs to be handed replies to a particular outgoing msg) * msgno (for checking that a RPY/ANS/NUL received corresponds to the oldest outgoing MSG not yet completley responded to) I don't see any need for any other info in the MessageStatus, do you guys? There is a slight twist - the channel only adds outgoing messages to a queue to be written out. I'm thinking we should add two more states for a message to be in (besides the 5 MESSAGE_STATUS_* there are now): MESSAGE_STATUS_QUEUED -- its in the outgoing queue and no frames have been written out from it yet MESSAGE_STATUS_PARTIALLY_SENT -- its in the outgoing queue and some frames of the message have been sent out, but its not completely written out. I actually don't know if we'll need to check for these states (they are functionally equivalent to MESSAGE_STATUS_NOT_SENT, no?), but they will be extremely useful for debugging and logging. Make sense? -Gabe On Thu, 7 Mar 2002, Gabe Wachob wrote: > Guys- > Can someone remind me of why MessageStatus exists? It seems to add > a replylistener and status to a message, and then seems to (I believe in > error) associate separate channel, data, and answerno with the underlying > message. > > Is the MessageStatus cruft or what? I am going to whack it and > move everything into the Message unless I hear something very soon. I'm > trying to get channel to work, and mostly that means untangling sentToPeer > to work with my architecture. MessageStatus is deeply woven in there and > its time to figure out if we need it. > > -Gabe > > -- Gabe Wachob gw...@wa... Personal http://www.wachob.com CTO, WiredObjects http://www.wiredobjects.com |
From: Huston <hu...@us...> - 2002-03-08 16:10:14
|
> It appears that MessageStatus is *just* for keeping track of which > messages have been sent for the purposes of verifying things like "does > this incoming RPY correspond to a previously sent outoing MSG?", and as > such, we need to keep the following information in a MessageStatus queued > up in sentMSGQueue: > > *status of the message (e.g. sent, responded, etc.. maybe we have to add > "queued, but not completely sent") > > *replylistener (because someone needs to be handed replies to a particular > outgoing msg) > > * msgno (for checking that a RPY/ANS/NUL received corresponds to the > oldest outgoing MSG not yet completley responded to) > > > I don't see any need for any other info in the MessageStatus, do you guys? I think we could get by with that. The only reason the other fields are there are for convienience. > There is a slight twist - the channel only adds outgoing messages to a > queue to be written out. I'm thinking we should add two more states for a > message to be in (besides the 5 MESSAGE_STATUS_* there are now): > > MESSAGE_STATUS_QUEUED -- its in the outgoing queue and no frames have been > written out from it yet > > MESSAGE_STATUS_PARTIALLY_SENT -- its in the outgoing queue and some frames > of the message have been sent out, but its not completely written out. > > I actually don't know if we'll need to check for these states (they are > functionally equivalent to MESSAGE_STATUS_NOT_SENT, no?), but they will be > extremely useful for debugging and logging. Sounds reasonable. --Huston |
From: Sean A. <ze...@wo...> - 2002-03-08 17:20:45
|
On Thu, 2002-03-07 at 19:24, Gabe Wachob wrote: > Answering my own question, please confirm: >=20 > It appears that MessageStatus is *just* for keeping track of which > messages have been sent for the purposes of verifying things like "does > this incoming RPY correspond to a previously sent outoing MSG?", and as > such, we need to keep the following information in a MessageStatus queued > up in sentMSGQueue: Thats kind of the way I read it too=20 > *status of the message (e.g. sent, responded, etc.. maybe we have to add > "queued, but not completely sent") >=20 > *replylistener (because someone needs to be handed replies to a particula= r > outgoing msg) >=20 > * msgno (for checking that a RPY/ANS/NUL received corresponds to the > oldest outgoing MSG not yet completley responded to) >=20 >=20 >=20 > I don't see any need for any other info in the MessageStatus, do you guys= ? >=20 > There is a slight twist - the channel only adds outgoing messages to a > queue to be written out. I'm thinking we should add two more states for a > message to be in (besides the 5 MESSAGE_STATUS_* there are now): >=20 > MESSAGE_STATUS_QUEUED -- its in the outgoing queue and no frames have bee= n > written out from it yet >=20 > MESSAGE_STATUS_PARTIALLY_SENT -- its in the outgoing queue and some frame= s > of the message have been sent out, but its not completely written out. >=20 > I actually don't know if we'll need to check for these states (they are > functionally equivalent to MESSAGE_STATUS_NOT_SENT, no?), but they will b= e > extremely useful for debugging and logging. >=20 > Make sense? Yes=20 Sean |