@Override public void endElement(String uri, String localName, String qName) throws SAXException { String currentNode = this.elementStack.pop(); // if the node popped from the stack and the localName don't match, the xml document is improperly formatted if (!localName.equals(currentNode)) { throw new SAXException(SR.INVALID_RESPONSE_RECEIVED); } String value = this.bld.toString(); if (value.isEmpty()) { value = null; } if (BlobConstants.PAGE_RANGE_ELEMENT.equals(currentNode)) { final PageRange pageRef = new PageRange(this.startOffset, this.endOffset); this.pages.add(pageRef); } else if (BlobConstants.START_ELEMENT.equals(currentNode)) { this.startOffset = Long.parseLong(value); } else if (Constants.END_ELEMENT.equals(currentNode)) { this.endOffset = Long.parseLong(value); } this.bld = new StringBuilder(); }
@Override public void endElement(String uri, String localName, String qName) throws SAXException { String currentNode = this.elementStack.pop(); // if the node popped from the stack and the localName don't match, the xml document is improperly formatted if (!localName.equals(currentNode)) { throw new SAXException(SR.INVALID_RESPONSE_RECEIVED); } String value = this.bld.toString(); if (value.isEmpty()) { value = null; } if (BlobConstants.PAGE_RANGE_ELEMENT.equals(currentNode)) { final PageRange pageRef = new PageRange(this.startOffset, this.endOffset); this.pages.add(pageRef); } else if (BlobConstants.START_ELEMENT.equals(currentNode)) { this.startOffset = Long.parseLong(value); } else if (Constants.END_ELEMENT.equals(currentNode)) { this.endOffset = Long.parseLong(value); } this.bld = new StringBuilder(); }
PageRange range = new PageRange(offset, offset + length - 1);
@Test public void testDownloadPages() throws StorageException, URISyntaxException, IOException { final CloudPageBlob blobRef = setUpPageRanges(); ArrayList<PageRange> actualPageRanges = blobRef.downloadPageRanges(); ArrayList<PageRange> expectedPageRanges = new ArrayList<PageRange>(); expectedPageRanges.add(new PageRange(0, 512 - 1)); expectedPageRanges.add(new PageRange(2 * 512, 5 * 512 - 1)); expectedPageRanges.add(new PageRange(6 * 512, 7 * 512 - 1)); assertEquals(expectedPageRanges.size(), actualPageRanges.size()); for (int i = 0; i < expectedPageRanges.size(); i++) { assertEquals(expectedPageRanges.get(i).getStartOffset(), actualPageRanges.get(i).getStartOffset()); assertEquals(expectedPageRanges.get(i).getEndOffset(), actualPageRanges.get(i).getEndOffset()); } }
final PageRange pageRange = new PageRange(offset, offset + length - 1); final byte[] data = new byte[(int) length]; String md5 = null;
PageRange range = new PageRange(offset, offset + length - 1);
@Test public void testDownloadPageRangesWithOffset() throws StorageException, URISyntaxException, IOException { final CloudPageBlob blobRef = setUpPageRanges(); List<PageRange> actualPageRanges = blobRef.downloadPageRanges((long)1*512, null); List<PageRange> expectedPageRanges = new ArrayList<PageRange>(); expectedPageRanges.add(new PageRange(2 * 512, 5 * 512 - 1)); expectedPageRanges.add(new PageRange(6 * 512, 7 * 512 - 1)); assertEquals(expectedPageRanges.size(), actualPageRanges.size()); for (int i = 0; i < expectedPageRanges.size(); i++) { assertEquals(expectedPageRanges.get(i).getStartOffset(), actualPageRanges.get(i).getStartOffset()); assertEquals(expectedPageRanges.get(i).getEndOffset(), actualPageRanges.get(i).getEndOffset()); } }
final PageRange pageRange = new PageRange(offset, offset + length - 1); final byte[] data = new byte[(int) length]; String md5 = null;
@Test public void testDownloadPageRangesWithOffsetAndLength() throws StorageException, URISyntaxException, IOException { final CloudPageBlob blobRef = setUpPageRanges(); List<PageRange> actualPageRanges = blobRef.downloadPageRanges((long)1*512, (long)5*512); List<PageRange> expectedPageRanges = new ArrayList<PageRange>(); expectedPageRanges.add(new PageRange(2 * 512, 5 * 512 - 1)); assertEquals(expectedPageRanges.size(), actualPageRanges.size()); for (int i = 0; i < expectedPageRanges.size(); i++) { assertEquals(expectedPageRanges.get(i).getStartOffset(), actualPageRanges.get(i).getStartOffset()); assertEquals(expectedPageRanges.get(i).getEndOffset(), actualPageRanges.get(i).getEndOffset()); } }