CVS update: JGroups/src/org/jgroups/protocols FlowControl.java
"Bela Ban" <[email protected]>
| Newsgroups | gmane.comp.java.javagroups.cvs |
|---|---|
| Message-ID | <[email protected]> |
User: belaban
Date: 10/09/06 09:26:54
Modified: src/org/jgroups/protocols FlowControl.java
Log:
taking headers into account when deciding whether to process a message or not
Revision Changes Path
1.2 +9 -8 JGroups/src/org/jgroups/protocols/FlowControl.java
Index: FlowControl.java
===================================================================
RCS file: /cvsroot/javagroups/JGroups/src/org/jgroups/protocols/FlowControl.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- FlowControl.java 31 Aug 2010 12:21:55 -0000 1.1
+++ FlowControl.java 6 Sep 2010 09:26:54 -0000 1.2
@@ -31,7 +31,7 @@
* <li>Receivers don't send the full credits (max_credits), but rather the actual number of bytes received
* <ol/>
* @author Bela Ban
- * @version $Id: FlowControl.java,v 1.1 2010/08/31 12:21:55 belaban Exp $
+ * @version $Id: FlowControl.java,v 1.2 2010/09/06 09:26:54 belaban Exp $
*/
@MBean(description="Simple flow control protocol based on a credit system")
public abstract class FlowControl extends Protocol {
@@ -384,6 +384,9 @@
switch(evt.getType()) {
case Event.MSG:
Message msg=(Message)evt.getArg();
+ if(msg.isFlagSet(Message.NO_FC))
+ break;
+
Address dest=msg.getDest();
boolean multicast=dest == null || dest.isMulticastAddress();
boolean handle_multicasts=handleMulticastMessage();
@@ -391,8 +394,6 @@
if(!process)
break;
- if(msg.isFlagSet(Message.NO_FC))
- break;
int length=msg.getLength();
if(length == 0)
break;
@@ -417,17 +418,17 @@
// JGRP-465. We only deal with msgs to avoid having to use a concurrent collection; ignore views,
// suspicions, etc which can come up on unusual threads.
Message msg=(Message)evt.getArg();
+ if(msg.isFlagSet(Message.NO_FC))
+ break;
+
Address dest=msg.getDest();
boolean multicast=dest == null || dest.isMulticastAddress();
boolean handle_multicasts=handleMulticastMessage();
- boolean process=(handle_multicasts && multicast) || (!handle_multicasts && !multicast);
+ FcHeader hdr=(FcHeader)msg.getHeader(this.id);
+ boolean process=(handle_multicasts && multicast) || (!handle_multicasts && !multicast) || hdr != null;
if(!process)
break;
-
- if(msg.isFlagSet(Message.NO_FC))
- break;
- FcHeader hdr=(FcHeader)msg.getHeader(this.id);
if(hdr != null) {
switch(hdr.type) {
case FcHeader.REPLENISH:
------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:
Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd