Package javax.jcr

Examples of javax.jcr.RangeIterator


    * New nodes moved into session log and not save
    */
   public void testGetNodesLazilySessionUpdatedNodes() throws Exception
   {
      testRoot.orderBefore("child110", "child0");
      RangeIterator iterator = testRoot.getNodesLazily();

      NodeImpl next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child110");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 0);

      next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child0");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 1);

      iterator.skip(108);
      next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child109");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 110);
   }
View Full Code Here


   //=============== test iterator ===============

   public void testGetNodesLazilyIterator() throws Exception
   {
      RangeIterator iterator = testRoot.getNodesLazily();

      // there are 150 node, so it must have next
      assertTrue(iterator.hasNext());
      // position is before first node
      assertEquals(0, iterator.getPosition());

      // fetch first one (/child0)
      iterator.next();
      assertEquals(1, iterator.getPosition());

      // fetch second one (/child1)
      iterator.next();
      assertEquals(2, iterator.getPosition());

      // skip to /child12
      iterator.skip(10);
      NodeImpl next = (NodeImpl)iterator.next();
      assertEquals(13, iterator.getPosition());
      assertEquals(12, next.getProperty(INDEX_PROPERTY).getLong());

      iterator.skip(1);
      next = (NodeImpl)iterator.next();
      assertEquals(15, iterator.getPosition());
      assertEquals(14, next.getProperty(INDEX_PROPERTY).getLong());

      iterator.skip(100);
      next = (NodeImpl)iterator.next();
      assertEquals(116, iterator.getPosition());
      assertEquals(115, next.getProperty(INDEX_PROPERTY).getLong());

      iterator = testRoot.getNodesLazily();
      long size = iterator.getSize();
      iterator.skip(size);

      try
      {
         iterator.next();
         fail("Exception should be thrown");
      }
      catch (NoSuchElementException e)
      {
      }

      // remove nodes from 31..60 to make gap in interval of order numbers
      iterator = testRoot.getNodesLazily();
      iterator.skip(30);
      for (int i = 0; i < 30; i++)
      {
         ((NodeImpl)iterator.next()).remove();
      }
      testRoot.save();

      iterator = testRoot.getNodesLazily(10);
      size = 0;
      while (iterator.hasNext())
      {
         size++;
         iterator.next();
      }
     
      assertEquals(320, size);
   }
View Full Code Here

    protected void setUp() throws Exception {
        super.setUp();
    }

    public void testSizeGreaterMinusOne() throws RepositoryException {
        RangeIterator it = testRootNode.getProperties();
        // a node always has at least a single property
        assertTrue(it.getSize() > 0);

        if (testRootNode.hasNodes()) {
            it = testRootNode.getNodes();
            // a node always has at least a single property
            assertTrue(it.getSize() > 0);
        }
    }
View Full Code Here

        while (testRootNode.hasProperty(name)) {
            name = name + i;
            i++;
        }
        // retrieve PropertyIterator for a name that does not exist as Property
        RangeIterator it = testRootNode.getProperties(name);
        assertTrue(it.getSize() == 0);

        name = nameHint;
        while (testRootNode.hasNode(name)) {
            name = name + i;
            i++;
        }
        // retrieve NodeIterator for a name that does not exist as Node
        it = testRootNode.getNodes(name);
        assertTrue(it.getSize() == 0);
    }
View Full Code Here

        it = testRootNode.getNodes(name);
        assertTrue(it.getSize() == 0);
    }

    public void testSizeShrinksIfInvalidItemFound() throws NotExecutableException, RepositoryException {
        RangeIterator it;
        try {
            testRootNode.addNode(nodeName1, testNodeType);
            testRootNode.addNode(nodeName2, testNodeType);
            Node child = testRootNode.addNode(nodeName3, testNodeType);
            testRootNode.save();

            it = testRootNode.getNodes();
            // remove 1 child -> force the iterator to contain an entry that
            // cannot be resolved into a node.
            child.remove();

        } catch (RepositoryException e) {
            throw new NotExecutableException();
        }

        // now the original size is off by one and will be adjusted automatically
        long size = it.getSize();
        long zise = 0;
        while (it.hasNext()) {
            it.next();
            zise++;
        }
        // original size is bigger by 1 than the calculated size during the
        // iteration.
        assertTrue(size == zise+1);
        // retrieve size again and check if it has been been adjusted.
        assertTrue(it.getSize() == zise);
    }
View Full Code Here

    @Test
    public void testLoadRuleListForCategories() throws SerializationException {
        CategoryPageRequest categoryPageRequest = new CategoryPageRequest( "/path",
                                                                           0,
                                                                           new Integer( 10 ) );
        RangeIterator rangeIterator = mock( RangeIterator.class );
        when( rangeIterator.hasNext() ).thenReturn( false );
        when( rangeIterator.getPosition() ).thenReturn( 1L );
        AssetItemPageResult assetItemPageResult = new AssetItemPageResult( Arrays.asList( mock( AssetItem.class,
                                                                                                Mockito.RETURNS_MOCKS ) ),
                                                                           1,
                                                                           false );
        when( rulesRepository.findAssetsByCategory( categoryPageRequest.getCategoryPath(),
View Full Code Here

    * New nodes moved into session log and not save
    */
   public void testGetNodesLazilySessionUpdatedNodes() throws Exception
   {
      testRoot.orderBefore("child110", "child0");
      RangeIterator iterator = testRoot.getNodesLazily();

      NodeImpl next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child110");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 0);

      next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child0");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 1);

      iterator.skip(108);
      next = (NodeImpl)iterator.next();
      assertEquals(next.getName(), "child109");
      assertEquals(((NodeData)next.getData()).getOrderNumber(), 110);
   }
View Full Code Here

   //=============== test iterator ===============

   public void testGetNodesLazilyIterator() throws Exception
   {
      RangeIterator iterator = testRoot.getNodesLazily();

      // there are 150 node, so it must have next
      assertTrue(iterator.hasNext());
      // position is before first node
      assertEquals(0, iterator.getPosition());

      // fetch first one (/child0)
      iterator.next();
      assertEquals(1, iterator.getPosition());

      // fetch second one (/child1)
      iterator.next();
      assertEquals(2, iterator.getPosition());

      // skip to /child12
      iterator.skip(10);
      NodeImpl next = (NodeImpl)iterator.next();
      assertEquals(13, iterator.getPosition());
      assertEquals(12, next.getProperty(INDEX_PROPERTY).getLong());

      iterator.skip(1);
      next = (NodeImpl)iterator.next();
      assertEquals(15, iterator.getPosition());
      assertEquals(14, next.getProperty(INDEX_PROPERTY).getLong());

      iterator.skip(100);
      next = (NodeImpl)iterator.next();
      assertEquals(116, iterator.getPosition());
      assertEquals(115, next.getProperty(INDEX_PROPERTY).getLong());

      iterator = testRoot.getNodesLazily();
      long size = iterator.getSize();
      iterator.skip(size);

      try
      {
         iterator.next();
         fail("Exception should be thrown");
      }
      catch (NoSuchElementException e)
      {
      }

      // remove nodes from 31..60 to make gap in interval of order numbers
      iterator = testRoot.getNodesLazily();
      iterator.skip(30);
      for (int i = 0; i < 30; i++)
      {
         ((NodeImpl)iterator.next()).remove();
      }
      testRoot.save();

      iterator = testRoot.getNodesLazily(10);
      size = 0;
      while (iterator.hasNext())
      {
         size++;
         iterator.next();
      }
     
      assertEquals(320, size);
   }
View Full Code Here

    @Test
    public void testLoadRuleListForCategories() throws SerializationException {
        CategoryPageRequest categoryPageRequest = new CategoryPageRequest( "/path",
                                                                           0,
                                                                           new Integer( 10 ) );
        RangeIterator rangeIterator = mock( RangeIterator.class );
        when( rangeIterator.hasNext() ).thenReturn( false );
        when( rangeIterator.getPosition() ).thenReturn( 1L );
        AssetItemPageResult assetItemPageResult = new AssetItemPageResult( Arrays.asList( mock( AssetItem.class,
                                                                                                Mockito.RETURNS_MOCKS ) ),
                                                                           1,
                                                                           false );
        when( rulesRepository.findAssetsByCategory( categoryPageRequest.getCategoryPath(),
View Full Code Here

    @Test
    public void testLoadRuleListForCategories() throws SerializationException {
        CategoryPageRequest categoryPageRequest = new CategoryPageRequest( "/path",
                                                                           0,
                                                                           new Integer( 10 ) );
        RangeIterator rangeIterator = mock( RangeIterator.class );
        when( rangeIterator.hasNext() ).thenReturn( false );
        when( rangeIterator.getPosition() ).thenReturn( 1L );
        AssetItemPageResult assetItemPageResult = new AssetItemPageResult( Arrays.asList( mock( AssetItem.class,
                                                                                                Mockito.RETURNS_MOCKS ) ),
                                                                           1,
                                                                           false );
        when( rulesRepository.findAssetsByCategory( categoryPageRequest.getCategoryPath(),
View Full Code Here

TOP

Related Classes of javax.jcr.RangeIterator

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.