protected List<NodeData> getChildNodesData(final NodeData nodeData, boolean forcePersistentRead)
      throws RepositoryException
   {

      List<NodeData> childNodes = null;
      if (!forcePersistentRead && cache.isEnabled())
      {
         childNodes = cache.getChildNodes(nodeData);
         if (childNodes != null)
         {
            return childNodes;
         }
      }
      final DataRequest request = new DataRequest(nodeData.getIdentifier(), DataRequest.GET_NODES);

      try
      {
         request.start();
         if (!forcePersistentRead && cache.isEnabled())
         {
            // Try first to get the value from the cache since a
            // request could have been launched just before
            childNodes = cache.getChildNodes(nodeData);
            if (childNodes != null)
            {
               return childNodes;
            }
         }
         return executeAction(new PrivilegedExceptionAction<List<NodeData>>()
         {
            public List<NodeData> run() throws RepositoryException
            {
               List<NodeData> childNodes = CacheableWorkspaceDataManager.super.getChildNodesData(nodeData);
               if (cache.isEnabled())
               {
                  cache.addChildNodes(nodeData, childNodes);
               }

               return childNodes;
            }
         });
      }
      finally
      {
         request.done();
      }
   }
protected List < NodeData > getChildNodesData ( final NodeData nodeData , boolean forcePersistentRead ) throws RepositoryException { List < NodeData > childNodes = null ; if ( ! forcePersistentRead && cache . isEnabled ( ) ) { childNodes = cache . getChildNodes ( nodeData ) ; if ( childNodes != null ) { return childNodes ; } } final DataRequest request = new DataRequest ( nodeData . getIdentifier ( ) , DataRequest . GET_NODES ) ; try { request . start ( ) ; if ( ! forcePersistentRead && cache . isEnabled ( ) ) { childNodes = cache . getChildNodes ( nodeData ) ; if ( childNodes != null ) { return childNodes ; } } return executeAction ( new PrivilegedExceptionAction < List < NodeData > > ( ) { public List < NodeData > run ( ) throws RepositoryException { List < NodeData > childNodes = CacheableWorkspaceDataManager . super . getChildNodesData ( nodeData ) ; if ( cache . isEnabled ( ) ) { cache . addChildNodes ( nodeData , childNodes ) ; } return childNodes ; } } ) ; } finally { request . done ( ) ; } }
Get child NodesData.

@param nodeData
parent
@param forcePersistentRead
true if persistent read is required (without cache)
@return List of NodeData
@throws RepositoryException
Repository error