class PrivateStream
Same name in other branches
- 9 core/lib/Drupal/Core/StreamWrapper/PrivateStream.php \Drupal\Core\StreamWrapper\PrivateStream
- 10 core/lib/Drupal/Core/StreamWrapper/PrivateStream.php \Drupal\Core\StreamWrapper\PrivateStream
- 11.x core/lib/Drupal/Core/StreamWrapper/PrivateStream.php \Drupal\Core\StreamWrapper\PrivateStream
Drupal private (private://) stream wrapper class.
Provides support for storing privately accessible files with the Drupal file interface.
Hierarchy
- class \Drupal\Core\StreamWrapper\LocalStream implements \Drupal\Core\StreamWrapper\StreamWrapperInterface
- class \Drupal\Core\StreamWrapper\PrivateStream extends \Drupal\Core\StreamWrapper\LocalStream
Expanded class hierarchy of PrivateStream
4 files declare their use of PrivateStream
- FileSystemForm.php in core/
modules/ system/ src/ Form/ FileSystemForm.php - HtaccessWriter.php in core/
lib/ Drupal/ Core/ File/ HtaccessWriter.php - ImageStyleCustomStreamWrappersTest.php in core/
modules/ image/ tests/ src/ Kernel/ ImageStyleCustomStreamWrappersTest.php - system.install in core/
modules/ system/ system.install - Install, update and uninstall functions for the system module.
File
-
core/
lib/ Drupal/ Core/ StreamWrapper/ PrivateStream.php, line 14
Namespace
Drupal\Core\StreamWrapperView source
class PrivateStream extends LocalStream {
/**
* {@inheritdoc}
*/
public static function getType() {
return StreamWrapperInterface::LOCAL_NORMAL;
}
/**
* {@inheritdoc}
*/
public function getName() {
return t('Private files');
}
/**
* {@inheritdoc}
*/
public function getDescription() {
return t('Private local files served by Drupal.');
}
/**
* {@inheritdoc}
*/
public function getDirectoryPath() {
return static::basePath();
}
/**
* {@inheritdoc}
*/
public function getExternalUrl() {
$path = str_replace('\\', '/', $this->getTarget());
return Url::fromRoute('system.private_file_download', [
'filepath' => $path,
], [
'absolute' => TRUE,
'path_processing' => FALSE,
])->toString();
}
/**
* Returns the base path for private://.
*
* Note that this static method is used by \Drupal\system\Form\FileSystemForm
* so you should alter that form or substitute a different form if you change
* the class providing the stream_wrapper.private service.
*
* @return string
* The base path for private://.
*/
public static function basePath() {
return Settings::get('file_private_path');
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
LocalStream::$context | public | property | Stream context resource. | ||
LocalStream::$handle | public | property | A generic resource handle. | ||
LocalStream::$uri | protected | property | Instance URI (stream). | ||
LocalStream::dirname | public | function | Gets the name of the directory from a given path. | Overrides StreamWrapperInterface::dirname | |
LocalStream::dir_closedir | public | function | Support for closedir(). | Overrides PhpStreamWrapperInterface::dir_closedir | |
LocalStream::dir_opendir | public | function | Support for opendir(). | Overrides PhpStreamWrapperInterface::dir_opendir | |
LocalStream::dir_readdir | public | function | Support for readdir(). | Overrides PhpStreamWrapperInterface::dir_readdir | |
LocalStream::dir_rewinddir | public | function | Support for rewinddir(). | Overrides PhpStreamWrapperInterface::dir_rewinddir | |
LocalStream::getFileSystem | private | function | Returns file system service. | ||
LocalStream::getLocalPath | protected | function | Returns the canonical absolute path of the URI, if possible. | ||
LocalStream::getTarget | protected | function | Returns the local writable target of the resource within the stream. | ||
LocalStream::getUri | public | function | Returns the stream resource URI. | Overrides StreamWrapperInterface::getUri | |
LocalStream::mkdir | public | function | Support for mkdir(). | Overrides PhpStreamWrapperInterface::mkdir | 1 |
LocalStream::realpath | public | function | Returns canonical, absolute path of the resource. | Overrides StreamWrapperInterface::realpath | 1 |
LocalStream::rename | public | function | Support for rename(). | Overrides PhpStreamWrapperInterface::rename | 1 |
LocalStream::rmdir | public | function | Support for rmdir(). | Overrides PhpStreamWrapperInterface::rmdir | 1 |
LocalStream::setUri | public | function | Sets the absolute stream resource URI. | Overrides StreamWrapperInterface::setUri | |
LocalStream::stream_cast | public | function | Retrieve the underlying stream resource. | Overrides PhpStreamWrapperInterface::stream_cast | |
LocalStream::stream_close | public | function | Support for fclose(). | Overrides PhpStreamWrapperInterface::stream_close | |
LocalStream::stream_eof | public | function | Support for feof(). | Overrides PhpStreamWrapperInterface::stream_eof | |
LocalStream::stream_flush | public | function | Support for fflush(). | Overrides PhpStreamWrapperInterface::stream_flush | 1 |
LocalStream::stream_lock | public | function | Support for flock(). | Overrides PhpStreamWrapperInterface::stream_lock | 1 |
LocalStream::stream_metadata | public | function | Sets metadata on the stream. | Overrides PhpStreamWrapperInterface::stream_metadata | 1 |
LocalStream::stream_open | public | function | Support for fopen(), file_get_contents(), file_put_contents() etc. | Overrides PhpStreamWrapperInterface::stream_open | 1 |
LocalStream::stream_read | public | function | Support for fread(), file_get_contents() etc. | Overrides PhpStreamWrapperInterface::stream_read | |
LocalStream::stream_seek | public | function | Seeks to specific location in a stream. | Overrides PhpStreamWrapperInterface::stream_seek | |
LocalStream::stream_set_option | public | function | Since Windows systems do not allow it and it is not needed for most use cases anyway, this method is not supported on local files and will trigger an error and return false. If needed, custom subclasses can provide OS-specific implementations for… |
Overrides PhpStreamWrapperInterface::stream_set_option | |
LocalStream::stream_stat | public | function | Support for fstat(). | Overrides PhpStreamWrapperInterface::stream_stat | |
LocalStream::stream_tell | public | function | Support for ftell(). | Overrides PhpStreamWrapperInterface::stream_tell | |
LocalStream::stream_truncate | public | function | Truncate stream. | Overrides PhpStreamWrapperInterface::stream_truncate | 1 |
LocalStream::stream_write | public | function | Support for fwrite(), file_put_contents() etc. | Overrides PhpStreamWrapperInterface::stream_write | 1 |
LocalStream::unlink | public | function | Support for unlink(). | Overrides PhpStreamWrapperInterface::unlink | 1 |
LocalStream::url_stat | public | function | Support for stat(). | Overrides PhpStreamWrapperInterface::url_stat | |
PrivateStream::basePath | public static | function | Returns the base path for private://. | ||
PrivateStream::getDescription | public | function | Returns the description of the stream wrapper for use in the UI. | Overrides StreamWrapperInterface::getDescription | |
PrivateStream::getDirectoryPath | public | function | Gets the path that the wrapper is responsible for. | Overrides LocalStream::getDirectoryPath | |
PrivateStream::getExternalUrl | public | function | Returns a web accessible URL for the resource. | Overrides StreamWrapperInterface::getExternalUrl | |
PrivateStream::getName | public | function | Returns the name of the stream wrapper for use in the UI. | Overrides StreamWrapperInterface::getName | |
PrivateStream::getType | public static | function | Returns the type of stream wrapper. | Overrides LocalStream::getType | |
StreamWrapperInterface::ALL | constant | A filter that matches all wrappers. | |||
StreamWrapperInterface::HIDDEN | constant | Defines the stream wrapper bit flag for a hidden file. | |||
StreamWrapperInterface::LOCAL | constant | Refers to a local file system location. | |||
StreamWrapperInterface::LOCAL_HIDDEN | constant | Hidden, readable and writable using local files. | |||
StreamWrapperInterface::LOCAL_NORMAL | constant | Visible, readable and writable using local files. | |||
StreamWrapperInterface::NORMAL | constant | This is the default 'type' flag. This does not include StreamWrapperInterface::LOCAL, because PHP grants a greater trust level to local files (for example, they can be used in an "include" statement, regardless of the… |
|||
StreamWrapperInterface::READ | constant | Wrapper is readable (almost always true). | |||
StreamWrapperInterface::READ_VISIBLE | constant | Visible and read-only. | |||
StreamWrapperInterface::VISIBLE | constant | Exposed in the UI and potentially web accessible. | |||
StreamWrapperInterface::WRITE | constant | Wrapper is writable. | |||
StreamWrapperInterface::WRITE_VISIBLE | constant | Visible, readable and writable. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.