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 ( ) ; } }
Get child NodesData .