ILIAS
trunk Revision v11.0_alpha-1831-g8615d53dadb
|
Public Types | |
enum | Disposition : string { INLINE = 'inline' } |
Public Member Functions | |
__construct ($input, private Services $http) | |
stream () | |
deliver () | |
setGeneralHeaders () | |
setCachingHeaders () | |
generateEtag () | |
close () | |
getDeliveryType () | |
setDeliveryType (string $delivery_type) | |
getMimeType () | |
setMimeType (string $mime_type) | |
getPathToFile () | |
setPathToFile (string $path_to_file) | |
getDownloadFileName () | |
setDownloadFileName (string $download_file_name) | |
getDisposition () | |
setDisposition (string $disposition) | |
isSendMimeType () | |
setSendMimeType (bool $send_mime_type) | |
isExitAfter () | |
setExitAfter (bool $exit_after) | |
isConvertFileNameToAsci () | |
setConvertFileNameToAsci (bool $convert_file_name_to_asci) | |
getEtag () | |
setEtag (string $etag) | |
getShowLastModified () | |
setShowLastModified (bool $show_last_modified) | |
isHasContext () | |
setHasContext (bool $has_context) | |
hasCache () | |
setCache (bool $cache) | |
hasHashFilename () | |
setHashFilename (bool $hash_filename) | |
checkCache () | |
clearBuffer () | |
isDeleteFile () | |
setDeleteFile (bool $delete_file) | |
Static Public Member Functions | |
static | isDEBUG () |
static | setDEBUG (bool $DEBUG) |
static | returnASCIIFileName (string $original_filename) |
Converts a UTF-8 filename to ASCII. More... | |
Data Fields | |
const | DIRECT_PHP_OUTPUT = 'php://output' |
const | DISP_ATTACHMENT = 'attachment' |
const | DISP_INLINE = 'inline' |
const | EXPIRES_IN = '+5 days' |
Private Member Functions | |
delivery () | |
determineMimeType () | |
determineDownloadFileName () | |
detemineDeliveryType () | |
sendEtagHeader () | |
sendLastModified () | |
checkExisting () | |
cleanDownloadFileName () | |
Converts the filename to ASCII. More... | |
setDispositionHeaders () | |
Private Attributes | |
string | $delivery_type = DeliveryMethod::PHP |
string | $mime_type = '' |
string | $path_to_file = '' |
string | $download_file_name = '' |
string | $disposition = self::DISP_ATTACHMENT |
bool | $send_mime_type = true |
bool | $exit_after = true |
bool | $convert_file_name_to_asci = true |
string | $etag = '' |
bool | $show_last_modified = true |
bool | $has_context = true |
bool | $cache = false |
bool | $hash_filename = false |
bool | $delete_file = false |
FileDeliveryTypeFactory | $factory |
FileStream | $resource = null |
Static Private Attributes | |
static string | $delivery_type_static = null |
static bool | $DEBUG = false |
enum ILIAS::FileDelivery::Delivery::Disposition : string |
ILIAS\FileDelivery\Delivery::__construct | ( | $input, | |
private Services | $http | ||
) |
string | FileStream | $path_to_file | |
Services | $http |
Definition at line 81 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\detemineDeliveryType(), ILIAS\FileDelivery\Delivery\determineDownloadFileName(), ILIAS\FileDelivery\Delivery\determineMimeType(), factory(), ilContext\getType(), ILIAS\FileDelivery\http(), null, ILIAS\FileDelivery\Delivery\setHasContext(), and ILIAS\FileDelivery\Delivery\setPathToFile().
ILIAS\FileDelivery\Delivery::checkCache | ( | ) |
Definition at line 453 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\generateEtag(), ILIAS\FileDelivery\Delivery\hasCache(), ILIAS\FileDelivery\Delivery\sendEtagHeader(), ILIAS\FileDelivery\Delivery\setCachingHeaders(), and ILIAS\FileDelivery\Delivery\setShowLastModified().
Referenced by ILIAS\FileDelivery\Delivery\deliver().
|
private |
Definition at line 483 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\close(), and ILIAS\FileDelivery\Delivery\getPathToFile().
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
|
private |
Converts the filename to ASCII.
Definition at line 496 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\getDownloadFileName(), and ILIAS\FileDelivery\Delivery\setDownloadFileName().
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::clearBuffer | ( | ) |
Definition at line 467 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\deliver().
ILIAS\FileDelivery\Delivery::close | ( | ) |
Definition at line 187 of file Delivery.php.
References ILIAS\FileDelivery\http().
Referenced by ILIAS\FileDelivery\Delivery\checkExisting(), and ILIAS\FileDelivery\Delivery\deliver().
ILIAS\FileDelivery\Delivery::deliver | ( | ) |
Definition at line 116 of file Delivery.php.
References $response, ILIAS\FileDelivery\Delivery\checkCache(), ILIAS\FileDelivery\Delivery\clearBuffer(), ILIAS\FileDelivery\Delivery\close(), ILIAS\FileDelivery\Delivery\delivery(), ILIAS\FileDelivery\Delivery\getDeliveryType(), ILIAS\FileDelivery\Delivery\getPathToFile(), ILIAS\FileDelivery\http(), ILIAS\FileDelivery\Delivery\isDeleteFile(), ILIAS\FileDelivery\Delivery\isExitAfter(), and ILIAS\FileDelivery\Delivery\setGeneralHeaders().
Referenced by ilFileDelivery\deliverFileLegacy(), and ILIAS\FileDelivery\Delivery\stream().
|
private |
Definition at line 110 of file Delivery.php.
References factory(), and ILIAS\FileDelivery\Delivery\getDeliveryType().
Referenced by ILIAS\FileDelivery\Delivery\deliver(), and ILIAS\FileDelivery\Delivery\stream().
|
private |
Definition at line 221 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\getDeliveryType(), ilRuntime\getInstance(), ILIAS\FileDelivery\Delivery\getPathToFile(), ILIAS\FileDelivery\FileDeliveryTypes\DeliveryMethod\PHP, ILIAS\FileDelivery\Delivery\setDeliveryType(), ILIAS\FileDelivery\FileDeliveryTypes\DeliveryMethod\XACCEL, and ILIAS\FileDelivery\FileDeliveryTypes\DeliveryMethod\XSENDFILE.
Referenced by ILIAS\FileDelivery\Delivery\__construct().
|
private |
Definition at line 212 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\getDownloadFileName(), ILIAS\FileDelivery\Delivery\getPathToFile(), and ILIAS\FileDelivery\Delivery\setDownloadFileName().
Referenced by ILIAS\FileDelivery\Delivery\__construct().
|
private |
Definition at line 193 of file Delivery.php.
References ILIAS\FileUpload\MimeType\APPLICATION__OCTET_STREAM, ILIAS\FileDelivery\Delivery\getPathToFile(), ILIAS\FileUpload\MimeType\lookupMimeType(), and ILIAS\FileDelivery\Delivery\setMimeType().
Referenced by ILIAS\FileDelivery\Delivery\__construct().
ILIAS\FileDelivery\Delivery::generateEtag | ( | ) |
Definition at line 181 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\getPathToFile(), and ILIAS\FileDelivery\Delivery\setEtag().
Referenced by ILIAS\FileDelivery\Delivery\checkCache().
ILIAS\FileDelivery\Delivery::getDeliveryType | ( | ) |
Definition at line 264 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$delivery_type.
Referenced by ILIAS\FileDelivery\Delivery\deliver(), ILIAS\FileDelivery\Delivery\delivery(), ILIAS\FileDelivery\Delivery\detemineDeliveryType(), and ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::getDisposition | ( | ) |
Definition at line 312 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$disposition.
Referenced by ILIAS\FileDelivery\Delivery\setDispositionHeaders().
ILIAS\FileDelivery\Delivery::getDownloadFileName | ( | ) |
Definition at line 300 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$download_file_name.
Referenced by ILIAS\FileDelivery\Delivery\cleanDownloadFileName(), ILIAS\FileDelivery\Delivery\determineDownloadFileName(), ILIAS\FileDelivery\Delivery\setDispositionHeaders(), and ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::getEtag | ( | ) |
Definition at line 360 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$etag.
Referenced by ILIAS\FileDelivery\Delivery\sendEtagHeader().
ILIAS\FileDelivery\Delivery::getMimeType | ( | ) |
Definition at line 276 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$mime_type.
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::getPathToFile | ( | ) |
Definition at line 288 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$path_to_file.
Referenced by ILIAS\FileDelivery\Delivery\checkExisting(), ILIAS\FileDelivery\Delivery\deliver(), ILIAS\FileDelivery\Delivery\detemineDeliveryType(), ILIAS\FileDelivery\Delivery\determineDownloadFileName(), ILIAS\FileDelivery\Delivery\determineMimeType(), ILIAS\FileDelivery\Delivery\generateEtag(), ILIAS\FileDelivery\Delivery\sendLastModified(), and ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::getShowLastModified | ( | ) |
Definition at line 372 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$show_last_modified.
Referenced by ILIAS\FileDelivery\Delivery\sendLastModified().
ILIAS\FileDelivery\Delivery::hasCache | ( | ) |
Definition at line 396 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$cache.
Referenced by ILIAS\FileDelivery\Delivery\checkCache().
ILIAS\FileDelivery\Delivery::hasHashFilename | ( | ) |
Definition at line 408 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$hash_filename.
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::isConvertFileNameToAsci | ( | ) |
Definition at line 348 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$convert_file_name_to_asci.
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
|
static |
Definition at line 441 of file Delivery.php.
ILIAS\FileDelivery\Delivery::isDeleteFile | ( | ) |
Definition at line 539 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$delete_file.
Referenced by ILIAS\FileDelivery\Delivery\deliver().
ILIAS\FileDelivery\Delivery::isExitAfter | ( | ) |
Definition at line 336 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$exit_after.
Referenced by ILIAS\FileDelivery\Delivery\deliver().
ILIAS\FileDelivery\Delivery::isHasContext | ( | ) |
ILIAS\FileDelivery\Delivery::isSendMimeType | ( | ) |
Definition at line 324 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$send_mime_type.
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
|
static |
Converts a UTF-8 filename to ASCII.
$original_filename | string UFT8-Filename |
Definition at line 510 of file Delivery.php.
Referenced by ilFileDataForumDraftsRCImplementation\deliverZipFile(), and ilFileDataForumRCImplementation\deliverZipFile().
|
private |
Definition at line 420 of file Delivery.php.
References $response, ILIAS\FileDelivery\Delivery\getEtag(), and ILIAS\FileDelivery\http().
Referenced by ILIAS\FileDelivery\Delivery\checkCache(), and ILIAS\FileDelivery\Delivery\setCachingHeaders().
|
private |
Definition at line 429 of file Delivery.php.
References $response, ILIAS\FileDelivery\Delivery\getPathToFile(), ILIAS\FileDelivery\Delivery\getShowLastModified(), and ILIAS\FileDelivery\http().
Referenced by ILIAS\FileDelivery\Delivery\setCachingHeaders().
ILIAS\FileDelivery\Delivery::setCache | ( | bool | $cache | ) |
ILIAS\FileDelivery\Delivery::setCachingHeaders | ( | ) |
Definition at line 171 of file Delivery.php.
References $response, ILIAS\StaticURL\Response\Response\ResponseHeader\CACHE_CONTROL, ILIAS\StaticURL\Response\Response\ResponseHeader\EXPIRES, ILIAS\FileDelivery\http(), ILIAS\StaticURL\Response\Response\ResponseHeader\PRAGMA, ILIAS\FileDelivery\Delivery\sendEtagHeader(), and ILIAS\FileDelivery\Delivery\sendLastModified().
Referenced by ILIAS\FileDelivery\Delivery\checkCache().
ILIAS\FileDelivery\Delivery::setConvertFileNameToAsci | ( | bool | $convert_file_name_to_asci | ) |
Definition at line 354 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$convert_file_name_to_asci.
Referenced by ilFileDelivery\deliverFileLegacy().
|
static |
ILIAS\FileDelivery\Delivery::setDeleteFile | ( | bool | $delete_file | ) |
Definition at line 545 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$delete_file.
Referenced by ilFileDelivery\deliverFileLegacy().
ILIAS\FileDelivery\Delivery::setDeliveryType | ( | string | $delivery_type | ) |
Definition at line 270 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$delivery_type.
Referenced by ILIAS\FileDelivery\Delivery\detemineDeliveryType(), and ILIAS\FileDelivery\Delivery\stream().
ILIAS\FileDelivery\Delivery::setDisposition | ( | string | $disposition | ) |
Definition at line 318 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$disposition.
Referenced by ilFileDelivery\deliverFileLegacy().
|
private |
Definition at line 551 of file Delivery.php.
References $response, ILIAS\StaticURL\Response\Response\ResponseHeader\CONTENT_DISPOSITION, ILIAS\FileDelivery\Delivery\getDisposition(), ILIAS\FileDelivery\Delivery\getDownloadFileName(), and ILIAS\FileDelivery\http().
Referenced by ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::setDownloadFileName | ( | string | $download_file_name | ) |
Definition at line 306 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$download_file_name.
Referenced by ILIAS\FileDelivery\Delivery\cleanDownloadFileName(), ilFileDelivery\deliverFileLegacy(), ILIAS\FileDelivery\Delivery\determineDownloadFileName(), and ILIAS\FileDelivery\Delivery\setGeneralHeaders().
ILIAS\FileDelivery\Delivery::setEtag | ( | string | $etag | ) |
Definition at line 366 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$etag.
Referenced by ILIAS\FileDelivery\Delivery\generateEtag().
ILIAS\FileDelivery\Delivery::setExitAfter | ( | bool | $exit_after | ) |
Definition at line 342 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$exit_after.
Referenced by ilFileDelivery\deliverFileLegacy().
ILIAS\FileDelivery\Delivery::setGeneralHeaders | ( | ) |
Definition at line 144 of file Delivery.php.
References $response, ILIAS\StaticURL\Response\Response\ResponseHeader\ACCEPT_RANGES, ILIAS\FileDelivery\Delivery\checkExisting(), ILIAS\FileDelivery\Delivery\cleanDownloadFileName(), ILIAS\StaticURL\Response\Response\ResponseHeader\CONNECTION, ILIAS\StaticURL\Response\Response\ResponseHeader\CONTENT_LENGTH, ILIAS\StaticURL\Response\Response\ResponseHeader\CONTENT_TYPE, ILIAS\FileDelivery\Delivery\getDeliveryType(), ILIAS\FileDelivery\Delivery\getDownloadFileName(), ILIAS\FileDelivery\Delivery\getMimeType(), ILIAS\FileDelivery\Delivery\getPathToFile(), ILIAS\FileDelivery\Delivery\hasHashFilename(), ILIAS\FileDelivery\http(), ILIAS\FileDelivery\Delivery\isConvertFileNameToAsci(), ILIAS\FileDelivery\Delivery\isSendMimeType(), ILIAS\FileDelivery\FileDeliveryTypes\DeliveryMethod\PHP, ILIAS\FileDelivery\Delivery\setDispositionHeaders(), and ILIAS\FileDelivery\Delivery\setDownloadFileName().
Referenced by ILIAS\FileDelivery\Delivery\deliver().
ILIAS\FileDelivery\Delivery::setHasContext | ( | bool | $has_context | ) |
Definition at line 390 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$has_context.
Referenced by ILIAS\FileDelivery\Delivery\__construct().
ILIAS\FileDelivery\Delivery::setHashFilename | ( | bool | $hash_filename | ) |
ILIAS\FileDelivery\Delivery::setMimeType | ( | string | $mime_type | ) |
Definition at line 282 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$mime_type.
Referenced by ilUtil\deliverData(), ilFileDelivery\deliverFileLegacy(), and ILIAS\FileDelivery\Delivery\determineMimeType().
ILIAS\FileDelivery\Delivery::setPathToFile | ( | string | $path_to_file | ) |
Definition at line 294 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$path_to_file.
Referenced by ILIAS\FileDelivery\Delivery\__construct().
ILIAS\FileDelivery\Delivery::setSendMimeType | ( | bool | $send_mime_type | ) |
Definition at line 330 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$send_mime_type.
ILIAS\FileDelivery\Delivery::setShowLastModified | ( | bool | $show_last_modified | ) |
Definition at line 378 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\$show_last_modified.
Referenced by ILIAS\FileDelivery\Delivery\checkCache().
ILIAS\FileDelivery\Delivery::stream | ( | ) |
Definition at line 101 of file Delivery.php.
References ILIAS\FileDelivery\Delivery\deliver(), ILIAS\FileDelivery\Delivery\delivery(), ILIAS\FileDelivery\FileDeliveryTypes\DeliveryMethod\PHP_CHUNKED, and ILIAS\FileDelivery\Delivery\setDeliveryType().
|
private |
Definition at line 69 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\hasCache(), and ILIAS\FileDelivery\Delivery\setCache().
|
private |
Definition at line 65 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\isConvertFileNameToAsci(), and ILIAS\FileDelivery\Delivery\setConvertFileNameToAsci().
|
staticprivate |
Definition at line 72 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\setDEBUG().
|
private |
Definition at line 71 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\LegacyDelivery\attached(), ILIAS\FileDelivery\Delivery\isDeleteFile(), and ILIAS\FileDelivery\Delivery\setDeleteFile().
|
private |
Definition at line 58 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\getDeliveryType(), and ILIAS\FileDelivery\Delivery\setDeliveryType().
|
staticprivate |
Definition at line 57 of file Delivery.php.
|
private |
Definition at line 62 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\LegacyDelivery\deliver(), ILIAS\FileDelivery\Delivery\StreamDelivery\deliver(), ILIAS\FileDelivery\Delivery\StreamDelivery\deliverFromToken(), ILIAS\FileDelivery\Delivery\getDisposition(), ILIAS\FileDelivery\Delivery\setDisposition(), and ILIAS\FileDelivery\Delivery\BaseDelivery\setGeneralHeaders().
|
private |
Definition at line 61 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\LegacyDelivery\attached(), ILIAS\FileDelivery\Delivery\getDownloadFileName(), and ILIAS\FileDelivery\Delivery\setDownloadFileName().
|
private |
Definition at line 66 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\getEtag(), and ILIAS\FileDelivery\Delivery\setEtag().
|
private |
Definition at line 64 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\isExitAfter(), and ILIAS\FileDelivery\Delivery\setExitAfter().
|
private |
Definition at line 73 of file Delivery.php.
|
private |
Definition at line 68 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\isHasContext(), and ILIAS\FileDelivery\Delivery\setHasContext().
|
private |
Definition at line 70 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\hasHashFilename(), and ILIAS\FileDelivery\Delivery\setHashFilename().
|
private |
Definition at line 59 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\LegacyDelivery\attached(), ILIAS\FileDelivery\Delivery\StreamDelivery\attached(), ILIAS\FileDelivery\Delivery\getMimeType(), and ILIAS\FileDelivery\Delivery\setMimeType().
|
private |
|
private |
Definition at line 74 of file Delivery.php.
|
private |
Definition at line 63 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\isSendMimeType(), and ILIAS\FileDelivery\Delivery\setSendMimeType().
|
private |
Definition at line 67 of file Delivery.php.
Referenced by ILIAS\FileDelivery\Delivery\getShowLastModified(), and ILIAS\FileDelivery\Delivery\setShowLastModified().
const ILIAS\FileDelivery\Delivery::DIRECT_PHP_OUTPUT = 'php://output' |
Definition at line 44 of file Delivery.php.
Referenced by ILIAS\HTTP\HTTPUtil\deliverStream(), and ILIAS\HTTP\HTTPUtil\deliverString().
const ILIAS\FileDelivery\Delivery::DISP_ATTACHMENT = 'attachment' |
Definition at line 48 of file Delivery.php.
Referenced by ILIAS\HTTP\HTTPUtil\deliverStream(), and ILIAS\HTTP\HTTPUtil\deliverString().
const ILIAS\FileDelivery\Delivery::DISP_INLINE = 'inline' |
Definition at line 52 of file Delivery.php.
const ILIAS\FileDelivery\Delivery::EXPIRES_IN = '+5 days' |
Definition at line 56 of file Delivery.php.