Add docstrings to download classes
This commit is contained in:
parent
35837010ae
commit
2982f78b45
@ -12,12 +12,26 @@
|
||||
namespace OCA\Office;
|
||||
|
||||
class Download {
|
||||
|
||||
/**
|
||||
* Filesystem view
|
||||
* @var \OC\Files\View
|
||||
*/
|
||||
protected $view;
|
||||
// File to be served
|
||||
|
||||
/**
|
||||
* Path to the File to be served, relative to the view
|
||||
* @var string
|
||||
*/
|
||||
protected $filepath;
|
||||
|
||||
protected $instance;
|
||||
|
||||
/**
|
||||
* Build download model according to the headers
|
||||
* @param type $view - filesystem view
|
||||
* @param type $filepath - path to the file relative to this view root
|
||||
*/
|
||||
public function __construct($view, $filepath){
|
||||
$this->filepath = $filepath;
|
||||
$this->view = $view;
|
||||
@ -29,6 +43,9 @@ class Download {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Send the requested content
|
||||
*/
|
||||
public function sendResponse(){
|
||||
\OCP\Response::disableCaching();
|
||||
|
||||
@ -40,22 +57,40 @@ class Download {
|
||||
exit();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the name of the requested file
|
||||
* @return String
|
||||
*/
|
||||
protected function getFilename(){
|
||||
return basename($this->filepath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the size of the requested file
|
||||
*/
|
||||
protected function getFilesize(){
|
||||
return $this->view->filesize($this->filepath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the mimetype of the requested file
|
||||
* @return string
|
||||
*/
|
||||
protected function getMimeType(){
|
||||
return $this->view->getMimeType($this->filepath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the requested file exists
|
||||
* @return bool
|
||||
*/
|
||||
protected function fileExists(){
|
||||
return $this->view->file_exists($this->filepath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send 404 Response
|
||||
*/
|
||||
protected function sendNotFound(){
|
||||
header("HTTP/1.0 404 Not Found");
|
||||
$tmpl = new OCP\Template('', '404', 'guest');
|
||||
|
@ -18,11 +18,19 @@ class Range extends \OCA\Office\Download {
|
||||
// End of the range
|
||||
protected $end;
|
||||
|
||||
/**
|
||||
* Build download model to serve HTTP_RANGE
|
||||
* @param type $view - filesystem view
|
||||
* @param type $filepath - path to the file relative to this view root
|
||||
*/
|
||||
public function __construct($view, $filepath){
|
||||
$this->view = $view;
|
||||
$this->filepath = $filepath;
|
||||
}
|
||||
|
||||
/**
|
||||
* Send the requested parts of the file
|
||||
*/
|
||||
public function sendResponse(){
|
||||
if (!preg_match('/^bytes=\d*-\d*(,\d*-\d*)*$/', $_SERVER['HTTP_RANGE'])){
|
||||
$this->sendNotSatisfiable();
|
||||
@ -57,6 +65,9 @@ class Range extends \OCA\Office\Download {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Send 416 if we can't satisfy the requested ranges
|
||||
*/
|
||||
protected function sendNotSatisfiable(){
|
||||
header('HTTP/1.1 416 Requested Range Not Satisfiable');
|
||||
header('Content-Range: bytes */' . $this->getFilesize()); // Required in 416.
|
||||
|
@ -10,15 +10,18 @@
|
||||
*/
|
||||
|
||||
namespace OCA\Office\Download;
|
||||
use OCA\Office\View;
|
||||
|
||||
class Simple extends \OCA\Office\Download {
|
||||
|
||||
|
||||
public function __construct($view, $filepath){
|
||||
$this->view = $view;
|
||||
$this->filepath = $filepath;
|
||||
}
|
||||
|
||||
/**
|
||||
* Send the whole file content as a response
|
||||
*/
|
||||
public function sendResponse(){
|
||||
header( 'Content-Type:' . $this->getMimeType() );
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user