protected boolean refreshFromSystem() {
        Lock lock = this.namespacesLock.writeLock();
        try {
            lock.lock();
            // Re-read and re-register all of the namespaces ...
            SessionCache systemCache = repository.createSystemSession(context, false);
            SystemContent system = new SystemContent(systemCache);
            Collection<Namespace> namespaces = system.readAllNamespaces();
            if (namespaces.isEmpty()) return false;
            this.cache.clear();
            this.cache.register(namespaces);
        } catch (Throwable e) {
            logger.error(e, JcrI18n.errorRefreshingNodeTypes, repository.name());
        } finally {
            lock.unlock();
        }
        return true;
    }
protected boolean refreshFromSystem ( ) { Lock lock = this . namespacesLock . writeLock ( ) ; try { lock . lock ( ) ; SessionCache systemCache = repository . createSystemSession ( context , false ) ; SystemContent system = new SystemContent ( systemCache ) ; Collection < Namespace > namespaces = system . readAllNamespaces ( ) ; if ( namespaces . isEmpty ( ) ) return false ; this . cache . clear ( ) ; this . cache . register ( namespaces ) ; } catch ( Throwable e ) { logger . error ( e , JcrI18n . errorRefreshingNodeTypes , repository . name ( ) ) ; } finally { lock . unlock ( ) ; } return true ; }
Refresh the node types from the stored representation.

@return true if there was at least one node type found, or false if there were none