protected List < PropertyData > getReferencedPropertiesData ( final String identifier ) throws RepositoryException { List < PropertyData > refProps = null ; if ( cache . isEnabled ( ) ) { refProps = cache . getReferencedProperties ( identifier ) ; if ( refProps != null ) { return refProps ; } } final DataRequest request = new DataRequest ( identifier , DataRequest . GET_REFERENCES ) ; try { request . start ( ) ; if ( cache . isEnabled ( ) ) { // Try first to get the value from the cache since a // request could have been launched just before refProps = cache . getReferencedProperties ( identifier ) ; if ( refProps != null ) { return refProps ; } } return executeAction ( new PrivilegedExceptionAction < List < PropertyData > > ( ) { public List < PropertyData > run ( ) throws RepositoryException { List < PropertyData > refProps = CacheableWorkspaceDataManager . super . getReferencesData ( identifier , false ) ; if ( cache . isEnabled ( ) ) { cache . addReferencedProperties ( identifier , refProps ) ; } return refProps ; } } ) ; } finally { request . done ( ) ; } }
Get referenced properties data .