Package org.jgroups.util

Examples of org.jgroups.util.Rsp


         LOG.trace("(" + channel.getLocalAddress() + "): responses for command " + commandId + ":\n" + rsps);
      }
      List<Object> retval = new ArrayList<Object>(rsps.size());
      for (Address dest : dests)
      {
         Rsp rsp = rsps.get(dest);
         if (rsp == null || (rsp.wasSuspected() && !rsp.wasReceived()))
         {
            // The corresponding member has left
            retval.add(new MemberHasLeftException("No response for the member " + dest
               + ", this member has probably left the cluster."));
         }
         else if (!rsp.wasReceived())
         {
            retval.add(new RPCException("Replication timeout for " + rsp.getSender() + ", rsp=" + rsp));
         }
         else
         {
            Object value = rsp.getValue();
            if (value instanceof RPCException)
            {
               // if we have any application-level exceptions make sure we throw them!!
               if (LOG.isTraceEnabled())
                  LOG.trace("Recieved exception'" + value + "' from " + rsp.getSender(), (RPCException)value);
            }
            retval.add(value);
         }
      }
      return retval;
View Full Code Here


                  } catch (org.jgroups.TimeoutException e) {
                     throw new TimeoutException("Timeout!", e);
                  }
                  filter.isAcceptable(response, a);
                  if (!filter.needMoreResponses()) {
                     retval = new RspList(Collections.singleton(new Rsp(a, response)));
                     break;
                  }
               }

            } else if (mode == GroupRequest.GET_ALL) {
View Full Code Here

                  if (retval == null) {
                     Object response = objectFuture.get();
                     if (trace) log.tracef("Received response: %s from %s", response, sender);
                     filter.isAcceptable(response, sender);
                     if (!filter.needMoreResponses())
                        retval = new RspList(Collections.singleton(new Rsp(sender, response)));
                  } else {
                     if (log.isTraceEnabled())
                        log.tracef("Skipping response from %s since a valid response for this request has already been received", sender);
                  }
               } catch (InterruptedException e) {
View Full Code Here

       {          
         Iterator iter = rspList.values().iterator();
        
         while (iter.hasNext())
         {
           Rsp rsp = (Rsp)iter.next();
          
           if (!rsp.wasReceived())
           {
              // https://jira.jboss.org/jira/browse/JBMESSAGING-1657
                  if (!rsp.wasSuspected())
                  {
                     throw new IllegalStateException(this + " response not received from " + rsp.getSender() + " - there may be others");
                  }
           }
         }   
       }
     }
View Full Code Here

       {          
         Iterator iter = rspList.values().iterator();
        
         while (iter.hasNext())
         {
           Rsp rsp = (Rsp)iter.next();
          
           if (!rsp.wasReceived())
           {
             throw new IllegalStateException(this + " response not received from " + rsp.getSender() + " - there may be others");
           }
         }   
       }
     }
   }
View Full Code Here

         LOG.trace("(" + getLocalAddress() + "): responses for command " + commandId + ":\n" + rsps);
      }
      List<Object> retval = new ArrayList<Object>(rsps.size());
      for (Address dest : dests)
      {
         Rsp rsp = rsps.get(dest);
         if (rsp == null || (rsp.wasSuspected() && !rsp.wasReceived()))
         {
            // The corresponding member has left
            retval.add(new MemberHasLeftException("No response for the member " + dest
               + ", this member has probably left the cluster."));
         }
         else if (!rsp.wasReceived())
         {
            retval.add(new RPCException("Replication timeout for " + rsp.getSender() + ", rsp=" + rsp));
         }
         else
         {
            Object value = rsp.getValue();
            if (value instanceof RPCException)
            {
               // if we have any application-level exceptions make sure we throw them!!
               if (LOG.isTraceEnabled())
                  LOG.trace("Recieved exception'" + value + "' from " + rsp.getSender(), (RPCException)value);
            }
            retval.add(value);
         }
      }
      return retval;
View Full Code Here

               if (retval == null) {
                  Object response = objectFuture.get();
                  if (trace) log.tracef("Received response: %s from %s", response, sender);
                  filter.isAcceptable(response, sender);
                  if (!filter.needMoreResponses()) {
                     retval = new RspList(Collections.singleton(new Rsp(sender, response)));
                     done = true;
                     //TODO cancel other tasks?
                  }
               } else {
                  if (trace) log.tracef("Skipping response from %s since a valid response for this request has already been received", sender);
View Full Code Here

               // TODO this is sub-optimal and sequential (for now), until JGroups provides notifying futures - JGRP-1030
               for (Address a : targets) {
                  Object response = sendMessage(constructMessage(buf, a), opts);
                  filter.isAcceptable(response, a);
                  if (!filter.needMoreResponses()) {
                     retval = new RspList(Collections.singleton(new Rsp(a, response)));
                     break;
                  }
               }

            } else if (mode == GroupRequest.GET_ALL) {
View Full Code Here

               // TODO this is sub-optimal and sequential (for now), until JGroups provides notifying futures - JGRP-1030
               for (Address a : targets) {
                  Object response = sendMessage(constructMessage(buf, a), opts);
                  filter.isAcceptable(response, a);
                  if (!filter.needMoreResponses()) {
                     retval = new RspList(Collections.singleton(new Rsp(a, response)));
                     break;
                  }
               }

            } else if (mode == GroupRequest.GET_ALL) {
View Full Code Here

         LOG.trace("(" + getLocalAddress() + "): responses for command " + commandId + ":\n" + rsps);
      }
      List<Object> retval = new ArrayList<Object>(rsps.size());
      for (Address dest : dests)
      {
         Rsp rsp = rsps.get(dest);
         if (rsp == null || (rsp.wasSuspected() && !rsp.wasReceived()))
         {
            // The corresponding member has left
            retval.add(new MemberHasLeftException("No response for the member " + dest
               + ", this member has probably left the cluster."));
         }
         else if (!rsp.wasReceived())
         {
            retval.add(new RPCException("Replication timeout for " + rsp.getSender() + ", rsp=" + rsp));
         }
         else
         {
            Object value = rsp.getValue();
            if (value instanceof RPCException)
            {
               // if we have any application-level exceptions make sure we throw them!!
               if (LOG.isTraceEnabled())
                  LOG.trace("Recieved exception'" + value + "' from " + rsp.getSender(), (RPCException)value);
            }
            retval.add(value);
         }
      }
      return retval;
View Full Code Here

TOP

Related Classes of org.jgroups.util.Rsp

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.