Package org.apache.sandesha2.wsrm

Examples of org.apache.sandesha2.wsrm.AcknowledgementRange


      log.debug("Enter: AcknowledgementManager::verifySequenceCompletion");

    HashMap startMap = new HashMap();

    while (ackRangesIterator.hasNext()) {
      AcknowledgementRange temp = (AcknowledgementRange) ackRangesIterator.next();
      startMap.put(new Long(temp.getLowerValue()), temp);
    }

    long start = 1;
    boolean result = false;
    while (!result) {
      AcknowledgementRange temp = (AcknowledgementRange) startMap.get(new Long(start));
      if (temp == null) {
        break;
      }

      if (temp.getUpperValue() >= lastMessageNo)
        result = true;

      start = temp.getUpperValue() + 1;
    }

    if (log.isDebugEnabled())
      log.debug("Enter: AcknowledgementManager::verifySequenceCompletion " + result);
    return result;
View Full Code Here


      } else if (temp == (upper + 1)) {
        upper = temp;
        completed = false;
      } else {
        // add ackRange (lower,upper)
        AcknowledgementRange ackRange = new AcknowledgementRange(rmNamespaceValue);
        ackRange.setLowerValue(lower);
        ackRange.setUpperValue(upper);
        ackRanges.add(ackRange);

        lower = temp;
        upper = temp;
        completed = false;
      }
    }

    if (!completed) {
      AcknowledgementRange ackRange = new AcknowledgementRange(rmNamespaceValue);
      ackRange.setLowerValue(lower);
      ackRange.setUpperValue(upper);
      ackRanges.add(ackRange);
      completed = true;
    }

    return ackRanges;
View Full Code Here

    ArrayList list = SandeshaUtil.getAckRangeArrayList(msgNumberStr,factory,Sandesha2Constants.SPEC_2005_02.NS_URI);
    assertNotNull(list);
    assertEquals(list.size(),3);
   
    Iterator it = list.iterator();
    AcknowledgementRange ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),3);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),5);
    assertEquals(ackRange.getUpperValue(),6);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),8);
    assertEquals(ackRange.getUpperValue(),8);
   
    assertFalse(it.hasNext());
  }
View Full Code Here

   
    List sequenceAckList = sequenceAcknowledgement.getAcknowledgementRanges();
    Iterator it = sequenceAckList.iterator();

    while (it.hasNext()) {
      AcknowledgementRange acknowledgementRange = (AcknowledgementRange) it.next();
      long upper = acknowledgementRange.getUpperValue();
      long lower = acknowledgementRange.getLowerValue();

      if (lower > upper) {
        invalidAck = true;         
        // check upper isn't bigger than the highest out msg number
      } else if ( upper > rmsBean.getHighestOutMessageNumber() ) {
View Full Code Here

    // is any new information in this ack message
    RangeString completedMessages = rmsBean.getClientCompletedMessages();
    long numberOfNewMessagesAcked = 0;

    while(ackRangeIterator.hasNext()) {
      AcknowledgementRange ackRange = (AcknowledgementRange) ackRangeIterator.next();
      long lower = ackRange.getLowerValue();
      long upper = ackRange.getUpperValue();
      Range ackedRange = new Range(lower, upper);
      // Quick check to see if the whole range is already covered
      if(!completedMessages.isRangeCompleted(ackedRange)) {
        //we now know that this range is complete so we update it. This should aggregate the
        //ranges together and tell us which numbers are newly acked
View Full Code Here

    ArrayList ackRanges = new ArrayList(); //the final ack ranges that we will build up

    Range[] ranges = completedMessageRanges.getRanges();
    for(int i=0; i<ranges.length; i++){
      AcknowledgementRange ackRange = new AcknowledgementRange(rmNamespaceValue);
      ackRange.setLowerValue(ranges[i].lowerValue);
      ackRange.setUpperValue(ranges[i].upperValue);
      ackRanges.add(ackRange);     
    }
   
    return ackRanges;
  }
View Full Code Here

    ArrayList list = SandeshaUtil.getAckRangeArrayList(rangeString,Sandesha2Constants.SPEC_2005_02.NS_URI);
    assertNotNull(list);
    assertEquals(list.size(),3);
   
    Iterator it = list.iterator();
    AcknowledgementRange ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),3);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),5);
    assertEquals(ackRange.getUpperValue(),6);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),8);
    assertEquals(ackRange.getUpperValue(),8);
   
    assertFalse(it.hasNext());
  }
View Full Code Here

    assertNotNull(list);
    //we expect 3 ranges: [1-4] [6] [9-10]
    assertEquals(list.size(),3);
   
    Iterator it = list.iterator();
    AcknowledgementRange ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),4);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),6);
    assertEquals(ackRange.getUpperValue(),6);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),9);
    assertEquals(ackRange.getUpperValue(),10);
   
    assertFalse(it.hasNext());
   
    //ok, now plug a gap at msg 5
    rangeString.addRange(new Range(5));
    list = SandeshaUtil.getAckRangeArrayList(rangeString,Sandesha2Constants.SPEC_2005_02.NS_URI);
    assertNotNull(list);
    //we expect 2 ranges: [1-6] [9-10]
    it = list.iterator();
    ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),6);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),9);
    assertEquals(ackRange.getUpperValue(),10);
   
    assertFalse(it.hasNext());
   
    //plug all of the gaps - 7 and 8
    rangeString.addRange(new Range(8));
    rangeString.addRange(new Range(7,8));
    list = SandeshaUtil.getAckRangeArrayList(rangeString,Sandesha2Constants.SPEC_2005_02.NS_URI);
    assertNotNull(list);
    //we expect 1 ranges: [1-10]
    it = list.iterator();
    ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),10);
   
    assertFalse(it.hasNext());
  }
View Full Code Here

    ArrayList list = SandeshaUtil.getAckRangeArrayList(msgNumberStr,factory,Sandesha2Constants.SPEC_2005_02.NS_URI);
    assertNotNull(list);
    assertEquals(list.size(),3);
   
    Iterator it = list.iterator();
    AcknowledgementRange ackRange = null;
   
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),1);
    assertEquals(ackRange.getUpperValue(),3);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),5);
    assertEquals(ackRange.getUpperValue(),6);
   
    ackRange = null;
    ackRange = (AcknowledgementRange) it.next();
    assertNotNull(ackRange);
    assertEquals(ackRange.getLowerValue(),8);
    assertEquals(ackRange.getUpperValue(),8);
   
    assertFalse(it.hasNext());
  }
View Full Code Here

    List sequenceAckList = sequenceAcknowledgement
        .getAcknowledgementRanges();
    Iterator it = sequenceAckList.iterator();

    while (it.hasNext()) {
      AcknowledgementRange acknowledgementRange = (AcknowledgementRange) it
          .next();
      long upper = acknowledgementRange.getUpperValue();
      long lower = acknowledgementRange.getLowerValue();

      if (lower > upper) {
        invalidAck = true;
        reason = "The SequenceAcknowledgement is invalid. Lower value is larger than upper value";
View Full Code Here

TOP

Related Classes of org.apache.sandesha2.wsrm.AcknowledgementRange

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.