We currently use many multiple file download methods/routines, all of which are slightly different, most of which are NOT resume friendly nor low-memory tolerant (crash on large files). We should 'revert' to using a single all-purpose 'download' method/function which adapts to accommodate huge file transfers with resume support. In most cases, this MUST be handled by using a temporary file since 'echo' and other output to stdout tends to buffer the entire file/data-stream before sending (thereby exhausting available memory).
expController->rss()
expHtmlToPDF->createpdf() (WKPDF)
administrationController->export_theme()
eventregistrationController->export()
orderController->returnFile()
storeCategoryController->returnFile()
storeController->returnFile()
eventController->ical()
fileController->export_eql_process()
fileController->export_files_process()
expFile->download() ** this should be our main function!
We currently use many multiple file download methods/routines, all of which are slightly different, most of which are NOT resume friendly nor low-memory tolerant (crash on large files). We should 'revert' to using a single all-purpose 'download' method/function which adapts to accommodate huge file transfers with resume support. In most cases, this MUST be handled by using a temporary file since 'echo' and other output to stdout tends to buffer the entire file/data-stream before sending (thereby exhausting available memory).