EntrySyncVector DirectoryReaderSync::readEntries(ExceptionState& es) { if (!m_hasMoreEntries) return EntrySyncVector(); EntriesSyncCallbackHelper helper; if (!m_fileSystem->readDirectory(this, m_fullPath, helper.successCallback(), helper.errorCallback(), DOMFileSystemBase::Synchronous)) { es.throwDOMException(InvalidModificationError, ExceptionMessages::failedToExecute("readEntries", "DirectoryReaderSync")); setHasMoreEntries(false); return EntrySyncVector(); } return helper.getResult(es); }
EntrySyncVector DirectoryReaderSync::readEntries(ExceptionState& exceptionState) { if (!m_hasMoreEntries) return EntrySyncVector(); EntriesSyncCallbackHelper helper; if (!m_fileSystem->readDirectory(this, m_fullPath, helper.successCallback(), helper.errorCallback(), DOMFileSystemBase::Synchronous)) { exceptionState.throwDOMException(InvalidModificationError, "Failed to read the directory."); setHasMoreEntries(false); return EntrySyncVector(); } return helper.getResult(exceptionState); }
PassRefPtr<EntryArraySync> DirectoryReaderSync::readEntries(ExceptionCode& ec) { ec = 0; if (!m_hasMoreEntries) return EntryArraySync::create(); EntriesSyncCallbackHelper helper(m_fileSystem->asyncFileSystem()); if (!m_fileSystem->readDirectory(this, m_fullPath, helper.successCallback(), helper.errorCallback())) { ec = FileException::INVALID_MODIFICATION_ERR; setHasMoreEntries(false); return 0; } return helper.getResult(ec); }