⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pbcastheader.java

📁 JGRoups源码
💻 JAVA
字号:
// $Id: PbcastHeader.java,v 1.3 2004/07/05 05:49:41 belaban Exp $package org.jgroups.protocols.pbcast;import org.jgroups.Header;import java.io.IOException;import java.io.ObjectInput;import java.io.ObjectOutput;import java.util.Hashtable;public class PbcastHeader extends Header {    public static final int MCAST_MSG  = 0;  // regular multicast message    public static final int GOSSIP     = 1;  // gossip message (unicast)    public static final int XMIT_REQ   = 2;  // retransmit request (unicast)    public static final int XMIT_RSP   = 3;  // retransmit response (unicast)    public static final int NOT_MEMBER = 4;  // shun message (unicast)    int       type=-1;    long      seqno=-1;        // we start out with 0 as first seqno for an mcast message    Gossip    gossip=null;     // used to identify gossips, implements the equals() and hashCode() methods    Hashtable xmit_reqs=null;  // for XMIT_REQs. keys=sender, vals=List of Longs (list of missing msgs)    public PbcastHeader() {	type=-1;    }        public PbcastHeader(int type) {	this.type=type;    }    public PbcastHeader(int type, long seqno) {	this.type=type; this.seqno=seqno;    }    public PbcastHeader(Gossip g, int type) {	this.type=type;	gossip=g;    }    public PbcastHeader(Gossip g, int type, long seqno) {	this.type=type; this.seqno=seqno;	gossip=g;    }        public long getSeqno() {return seqno;}    public String toString() {	StringBuffer sb=new StringBuffer();	sb.append("[PBCAST(" + type2String(type) + "), seqno=" + seqno);	if(gossip != null) sb.append(", gossip=" + gossip);	sb.append(']');	return sb.toString();    }    public long size() {	return 500;    }        public static String type2String(int t) {	switch(t) {	case MCAST_MSG:  return "MCAST_MSG";	case GOSSIP:     return "GOSSIP";	case XMIT_REQ:   return "XMIT_REQ";	case XMIT_RSP:   return "XMIT_RSP";	case NOT_MEMBER: return "NOT_MEMBER";	default:         return "UNKNOWN";	}    }    public void writeExternal(ObjectOutput out) throws IOException {	out.writeInt(type);	out.writeLong(seqno);	out.writeObject(gossip);	out.writeObject(xmit_reqs);    }		        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {	type=in.readInt();	seqno=in.readLong();	gossip=(Gossip)in.readObject();	xmit_reqs=(Hashtable)in.readObject();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -