private void sendLeaveResponses(Collection c) { for(Iterator i=c.iterator(); i.hasNext();) { Message msg=new Message((Address)i.next(), null, null); // send an ack to the leaving member GMS.GmsHeader hdr=new GMS.GmsHeader(GMS.GmsHeader.LEAVE_RSP); msg.putHeader(gms.getName(), hdr); gms.getDownProtocol().down(new Event(Event.MSG, msg)); } }
private void sendMergeCancelledMessage(Vector coords, ViewId merge_id) { Message msg; GMS.GmsHeader hdr; Address coord; if(coords == null || merge_id == null) { if(log.isErrorEnabled()) log.error("coords or merge_id == null"); return; } for(int i=0; i < coords.size(); i++) { coord=(Address)coords.elementAt(i); msg=new Message(coord, null, null); hdr=new GMS.GmsHeader(GMS.GmsHeader.CANCEL_MERGE); hdr.merge_id=merge_id; msg.putHeader(gms.getName(), hdr); gms.getDownProtocol().down(new Event(Event.MSG, msg)); } }
hdr.mbr=gms.local_addr; hdr.merge_id=merge_id; msg.putHeader(gms.getName(), hdr); gms.getDownProtocol().down(new Event(Event.MSG, msg));
hdr.my_digest=d; hdr.merge_id=merge_id; msg.putHeader(gms.getName(), hdr); gms.getDownProtocol().down(new Event(Event.MSG, msg));
protected void sendMergeRejectedResponse(Address sender, ViewId merge_id) { Message msg=new Message(sender, null, null); GMS.GmsHeader hdr=new GMS.GmsHeader(GMS.GmsHeader.MERGE_RSP); hdr.merge_rejected=true; hdr.merge_id=merge_id; msg.putHeader(gms.getName(), hdr); if(log.isDebugEnabled()) log.debug("response=" + hdr); gms.getDownProtocol().down(new Event(Event.ENABLE_UNICASTS_TO, sender)); gms.getDownProtocol().down(new Event(Event.MSG, msg)); }
/** * Send back a response containing view and digest to sender */ private void sendMergeResponse(Address sender, View view, Digest digest) { Message msg=new Message(sender, null, null); GMS.GmsHeader hdr=new GMS.GmsHeader(GMS.GmsHeader.MERGE_RSP); hdr.merge_id=merge_id; hdr.view=view; hdr.my_digest=digest; msg.putHeader(gms.getName(), hdr); if(log.isDebugEnabled()) log.debug("response=" + hdr); gms.getDownProtocol().down(new Event(Event.ENABLE_UNICASTS_TO, sender)); gms.getDownProtocol().down(new Event(Event.MSG, msg)); }
void sendLeaveMessage(Address coord, Address mbr) { Message msg=new Message(coord, null, null); GMS.GmsHeader hdr=new GMS.GmsHeader(GMS.GmsHeader.LEAVE_REQ, mbr); msg.putHeader(gms.getName(), hdr); gms.getDownProtocol().down(new Event(Event.MSG, msg)); }
void sendJoinMessage(Address coord, Address mbr) { Message msg; GMS.GmsHeader hdr; msg=new Message(coord, null, null); hdr=new GMS.GmsHeader(GMS.GmsHeader.JOIN_REQ, mbr); msg.putHeader(gms.getName(), hdr); // we have to enable unicasts to coord, as coord is not in our membership (the unicast message would get dropped) gms.getDownProtocol().down(new Event(Event.ENABLE_UNICASTS_TO, coord)); gms.getDownProtocol().down(new Event(Event.MSG, msg)); }
private void sendJoinResponse(JoinRsp rsp, Address dest) { Message m=new Message(dest, null, null); GMS.GmsHeader hdr=new GMS.GmsHeader(GMS.GmsHeader.JOIN_RSP, rsp); m.putHeader(gms.getName(), hdr); if(!gms.members.contains(dest)) gms.getDownProtocol().down(new Event(Event.ENABLE_UNICASTS_TO, dest)); gms.getDownProtocol().down(new Event(Event.MSG, m)); }