org.jgroups.Message.getDest()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(8.6k)|赞(0)|评价(0)|浏览(209)

本文整理了Java中org.jgroups.Message.getDest()方法的一些代码示例,展示了Message.getDest()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getDest()方法的具体详情如下:
包路径:org.jgroups.Message
类名称:Message
方法名:getDest

Message.getDest介绍

暂无

代码示例

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. Address dest=msg.getDest();
  3. if(dest == null)
  4. return down_prot.down(msg);
  5. // forward non local destinations to the coordinator, to relay to the remote cluster
  6. if(!isLocal(dest)) {
  7. forwardToCoord(msg);
  8. return null;
  9. }
  10. return down_prot.down(msg);
  11. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. Address dest=msg.getDest();
  3. if(dest != null || msg.isFlagSet(Message.Flag.NO_RELIABILITY))
  4. return down_prot.down(msg); // unicast address: not null and not mcast, pass down unchanged
  5. send(msg);
  6. return null; // don't pass down the stack
  7. }

代码示例来源:origin: wildfly/wildfly

  1. /** Called by the sender to resend messages for which no ACK has been received yet */
  2. protected void retransmit(Message msg) {
  3. if(is_trace) {
  4. UnicastHeader3 hdr=msg.getHeader(id);
  5. long seqno=hdr != null? hdr.seqno : -1;
  6. log.trace("%s --> XMIT(%s: #%d)", local_addr, msg.getDest(), seqno);
  7. }
  8. down_prot.down(msg);
  9. num_xmits++;
  10. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. if(!bypass) {
  3. Address dest = msg.getDest();
  4. if (dest == null) { // mcasts
  5. FlushHeader fh =msg.getHeader(this.id);
  6. if (fh != null && fh.type == FlushHeader.FLUSH_BYPASS) {
  7. return down_prot.down(msg);
  8. } else {
  9. blockMessageDuringFlush();
  10. }
  11. } else {
  12. // unicasts are irrelevant in virtual synchrony, let them through
  13. return down_prot.down(msg);
  14. }
  15. }
  16. return down_prot.down(msg);
  17. }

代码示例来源:origin: wildfly/wildfly

  1. private void copy(Message msg, int num_copies, Direction direction) {
  2. Address dest=msg.getDest();
  3. boolean multicast=dest == null;
  4. if((multicast && copy_multicast_msgs) || (!multicast && copy_unicast_msgs)) {
  5. for(int i=0; i < num_copies; i++) {
  6. Message copy=msg.copy(true);
  7. switch(direction) {
  8. case UP:
  9. up_prot.up(copy);
  10. break;
  11. case DOWN:
  12. down_prot.down(copy);
  13. break;
  14. }
  15. }
  16. }
  17. }
  18. }

代码示例来源:origin: wildfly/wildfly

  1. protected void sendDiscoveryRequest(Message req) {
  2. try {
  3. log.trace("%s: sending discovery request to %s", local_addr, req.getDest());
  4. down_prot.down(req);
  5. }
  6. catch(Throwable t) {
  7. log.trace("sending discovery request to %s failed: %s", req.dest(), t);
  8. }
  9. }
  10. }

代码示例来源:origin: wildfly/wildfly

  1. protected void sendDiscoveryRequest(Message req) {
  2. try {
  3. log.trace("%s: sending discovery request to %s", local_addr, req.getDest());
  4. down_prot.down(req);
  5. } catch (Throwable t) {
  6. log.error("sending discovery request to %s failed: %s", req.dest(), t);
  7. }
  8. }
  9. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. if(msg.getDest() != null || msg.isFlagSet(Message.Flag.NO_TOTAL_ORDER) || msg.isFlagSet(Message.Flag.OOB))
  3. return down_prot.down(msg);
  4. if(msg.getSrc() == null)
  5. msg.setSrc(local_addr);
  6. try {
  7. fwd_queue.put(msg);
  8. if(seqno_reqs.getAndIncrement() == 0) {
  9. int num_reqs=seqno_reqs.get();
  10. sendSeqnoRequest(num_reqs);
  11. }
  12. }
  13. catch(InterruptedException e) {
  14. if(!running)
  15. return null;
  16. throw new RuntimeException(e);
  17. }
  18. return null; // don't pass down
  19. }

代码示例来源:origin: wildfly/wildfly

  1. protected void sendResponse(Message rsp, long req_id, boolean is_exception) {
  2. Header rsp_hdr=new Header(is_exception? Header.EXC_RSP : Header.RSP, req_id, corr_id);
  3. rsp.putHeader(corr_id, rsp_hdr);
  4. if(log.isTraceEnabled())
  5. log.trace("sending rsp for %d to %s", req_id, rsp.getDest());
  6. transport.down(rsp);
  7. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. GmsHeader hdr =msg.getHeader(GMS_ID);
  3. Address remoteAddress = msg.getDest();
  4. if (needsAuthentication(hdr, remoteAddress)) {
  5. // We are a client who needs to authenticate
  6. SaslClientContext ctx = null;
  7. try {
  8. ctx = new SaslClientContext(saslClientFactory, mech, server_name != null ? server_name : remoteAddress.toString(), client_callback_handler, sasl_props, client_subject);
  9. sasl_context.put(remoteAddress, ctx);
  10. ctx.addHeader(msg, null);
  11. } catch (Exception e) {
  12. if (ctx != null) {
  13. disposeContext(remoteAddress);
  14. }
  15. throw new SecurityException(e);
  16. }
  17. }
  18. return down_prot.down(msg);
  19. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message message) {
  2. Address dest = message.getDest();
  3. if (dest != null && dest instanceof AnycastAddress && !message.isFlagSet(Message.Flag.NO_TOTAL_ORDER)) {
  4. // anycast message
  5. sendTotalOrderAnycastMessage(extract((AnycastAddress) dest), message);
  6. } else if (dest != null && dest instanceof AnycastAddress) {
  7. //anycast address with NO_TOTAL_ORDER flag (should no be possible, but...)
  8. send(extract((AnycastAddress) dest), message, true);
  9. } else {
  10. //normal message
  11. down_prot.down(message);
  12. }
  13. return null;
  14. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. if(msg.getDest() != null)
  3. return down_prot.down(msg); // only process multicast messages
  4. if(next == null) // view hasn'<></> been received yet, use the normal transport
  5. return down_prot.down(msg);
  6. // we need to copy the message, as we cannot do a msg.setSrc(next): the next retransmission
  7. // would use 'next' as destination !
  8. Message copy=msg.copy(true);
  9. short hdr_ttl=(short)(loopback? view_size -1 : view_size);
  10. DaisyHeader hdr=new DaisyHeader(hdr_ttl);
  11. copy.setDest(next);
  12. copy.putHeader(getId(), hdr);
  13. msgs_sent++;
  14. if(loopback) {
  15. if(log.isTraceEnabled()) log.trace(new StringBuilder("looping back message ").append(msg));
  16. if(msg.getSrc() == null)
  17. msg.setSrc(local_addr);
  18. default_pool.execute(() -> up_prot.up(msg));
  19. }
  20. return down_prot.down(copy);
  21. }

代码示例来源:origin: wildfly/wildfly

  1. @Override
  2. public void members(List<PingData> mbrs) {
  3. PhysicalAddress own_physical_addr=(PhysicalAddress)down(new Event(Event.GET_PHYSICAL_ADDRESS, local_addr));
  4. PingData data=new PingData(local_addr, false, org.jgroups.util.NameCache.get(local_addr), own_physical_addr);
  5. PingHeader hdr=new PingHeader(PingHeader.GET_MBRS_REQ).clusterName(cluster_name);
  6. Set<PhysicalAddress> physical_addrs=mbrs.stream().filter(ping_data -> ping_data != null && ping_data.getPhysicalAddr() != null)
  7. .map(PingData::getPhysicalAddr).collect(Collectors.toSet());
  8. for(PhysicalAddress physical_addr: physical_addrs) {
  9. if(physical_addr != null && own_physical_addr.equals(physical_addr)) // no need to send the request to myself
  10. continue;
  11. // the message needs to be DONT_BUNDLE, see explanation above
  12. final Message msg=new Message(physical_addr).setFlag(Message.Flag.INTERNAL, Message.Flag.DONT_BUNDLE, Message.Flag.OOB)
  13. .putHeader(this.id, hdr).setBuffer(marshal(data));
  14. log.trace("%s: sending discovery request to %s", local_addr, msg.getDest());
  15. down_prot.down(msg);
  16. }
  17. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. if(msg.isFlagSet(Message.Flag.NO_FC))
  3. return down_prot.down(msg);
  4. Address dest=msg.getDest();
  5. boolean multicast=dest == null;
  6. boolean handle_multicasts=handleMulticastMessage();
  7. boolean process=(handle_multicasts && multicast) || (!handle_multicasts && !multicast);
  8. if(!process)
  9. return down_prot.down(msg);
  10. int length=msg.getLength();
  11. if(length == 0)
  12. return down_prot.down(msg);
  13. Object retval=handleDownMessage(msg);
  14. // if the message is DONT_LOOPBACK, we will not receive it, therefore the credit
  15. // check needs to be done now
  16. if(msg.isTransientFlagSet(Message.TransientFlag.DONT_LOOPBACK)) {
  17. long new_credits=adjustCredit(received, local_addr, length);
  18. if(new_credits > 0)
  19. sendCredit(local_addr, new_credits);
  20. }
  21. return retval;
  22. }

代码示例来源:origin: wildfly/wildfly

  1. Address dest=msg.getDest(), src=msg.getSrc();
  2. long frag_id=curr_id.getAndIncrement(); // used as seqnos
  3. int num_frags;
  4. FragHeader hdr=new FragHeader(frag_id, i, num_frags);
  5. frag_msg.putHeader(this.id, hdr);
  6. down_prot.down(frag_msg);

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. Address dest=msg.getDest();
  3. boolean multicast=dest == null;
  4. down_prot.down(msg);
  5. return down_prot.down(msg);

代码示例来源:origin: wildfly/wildfly

  1. protected void forward(final Message msg, long seqno, boolean flush) {
  2. Address target=coord;
  3. if(target == null)
  4. return;
  5. byte type=flush? SequencerHeader.FLUSH : SequencerHeader.FORWARD;
  6. try {
  7. SequencerHeader hdr=new SequencerHeader(type, seqno);
  8. Message forward_msg=new Message(target, Util.streamableToBuffer(msg)).putHeader(this.id,hdr);
  9. down_prot.down(forward_msg);
  10. forwarded_msgs++;
  11. }
  12. catch(Exception ex) {
  13. log.error(Util.getMessage("FailedForwardingMessageTo") + msg.getDest(), ex);
  14. }
  15. }

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. Address dst=msg.getDest();
  3. return down_prot.down(msg);
  4. return down_prot.down(msg);

代码示例来源:origin: wildfly/wildfly

  1. public Object down(Message msg) {
  2. Address dest=msg.getDest();
  3. if(dest == null || !(dest instanceof SiteAddress))
  4. return down_prot.down(msg);

代码示例来源:origin: wildfly/wildfly

  1. protected void getStateFromApplication(Address requester, Digest digest) {
  2. StateTransferInfo rsp=(StateTransferInfo)up_prot.up(new Event(Event.GET_APPLSTATE));
  3. byte[] state=rsp.state;
  4. if(stats) {
  5. num_state_reqs.increment();
  6. if(state != null)
  7. num_bytes_sent.add(state.length);
  8. avg_state_size=num_bytes_sent.doubleValue() / num_state_reqs.doubleValue();
  9. }
  10. Message state_rsp=new Message(requester, state).putHeader(this.id, new StateHeader(StateHeader.STATE_RSP, digest));
  11. log.trace("%s: sending state to %s (size=%s)", local_addr, state_rsp.getDest(), Util.printBytes(state != null? state.length : 0));
  12. down_prot.down(state_rsp);
  13. }

相关文章