org.jgroups.protocols.HDRS Maven / Gradle / Ivy
package org.jgroups.protocols;
import org.jgroups.Message;
import org.jgroups.annotations.MBean;
import org.jgroups.annotations.Property;
import org.jgroups.stack.Protocol;
import org.jgroups.util.MessageBatch;
/**
* Prints the headers of all sent or received messages
*/
@MBean(description="Prints the headers of all sent and/or received messages")
public class HDRS extends Protocol {
@Property(description="Enables printing of down messages")
protected volatile boolean print_down=true;
@Property(description="Enables printing of up (received) messages")
protected volatile boolean print_up=true;
public Object down(Message msg) {
if(print_down)
System.out.printf("-- to %s (%d bytes): %s\n", msg.dest(), msg.getLength(), msg.printHeaders());
return down_prot.down(msg); // Pass on to the layer below us
}
public Object up(Message msg) {
if(print_up)
System.out.printf("-- [s] from %s (%d bytes): %s\n", msg.src(), msg.getLength(), msg.printHeaders());
return up_prot.up(msg); // Pass up to the layer above us
}
public void up(MessageBatch batch) {
if(print_up) {
for(Message msg : batch)
System.out.printf("-- [b] from %s (%d bytes): %s\n", msg.src(), msg.getLength(), msg.printHeaders());
}
if(!batch.isEmpty())
up_prot.up(batch);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy