class WingsuitStreamWrapper in Gin Layout Builder 8.2
Defines the read-only ws-assets:// stream wrapper for theme files.
Hierarchy
- class \Drupal\Core\StreamWrapper\LocalStream implements StreamWrapperInterface
- class \Drupal\Core\StreamWrapper\LocalReadOnlyStream
- class \Drupal\wingsuit_companion\StreamWrapper\WingsuitStreamWrapper
- class \Drupal\Core\StreamWrapper\LocalReadOnlyStream
Expanded class hierarchy of WingsuitStreamWrapper
1 string reference to 'WingsuitStreamWrapper'
1 service uses WingsuitStreamWrapper
File
- src/
StreamWrapper/ WingsuitStreamWrapper.php, line 12
Namespace
Drupal\wingsuit_companion\StreamWrapperView source
class WingsuitStreamWrapper extends LocalReadOnlyStream {
/**
* The theme handler service.
*
* @var \Drupal\Core\Extension\ThemeHandlerInterface
*/
protected $themeHandler;
/**
* WingsuitStreamWrapper constructor.
*
* @param ConfigFactory $config_factory
* Config factory service.
*/
public function __construct(ConfigFactory $config_factory = NULL) {
if ($config_factory === NULL) {
$config_factory = \Drupal::configFactory();
}
$this->config = $config_factory
->get('wingsuit_companion.config');
}
/**
* Returns the directory path to Wingsuit dist directory set in settings.php.
* Otherwise it will return the path to Wingsuit default dist location.
*
* @return string
*/
public function getDirectoryPath() {
$dist_path = $this->config
->get('dist_path');
return $dist_path;
}
/**
* {@inheritdoc}
*/
public function getName() {
return $this
->t('Wingsuit files');
}
/**
* {@inheritdoc}
*/
public function getDescription() {
return $this
->t('Local files stored under wingsuit dist directory.');
}
/**
* {@inheritdoc}
*/
public function getExternalUrl() {
$dir = $this
->getDirectoryPath();
if (empty($dir)) {
throw new \InvalidArgumentException("Extension directory for {$this->uri} does not exist.");
}
$path = rtrim(base_path() . $dir . '/' . $this
->getTarget(), '/');
return $this
->getRequest()
->getUriForPath($path);
}
/**
* Returns the current request object.
*
* @return \Symfony\Component\HttpFoundation\Request
* The current request object.
*/
protected function getRequest() {
if (!isset($this->request)) {
$this->request = \Drupal::service('request_stack')
->getCurrentRequest();
}
return $this->request;
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
LocalReadOnlyStream:: |
public static | function |
Returns the type of stream wrapper. Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for mkdir(). Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for rename(). Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for rmdir(). Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for fflush(). Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for flock(). Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Does not change meta data as this is a read-only stream wrapper. Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for fopen(), file_get_contents(), file_put_contents() etc. Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Truncate stream. Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for fwrite(), file_put_contents() etc. Overrides LocalStream:: |
|
LocalReadOnlyStream:: |
public | function |
Support for unlink(). Overrides LocalStream:: |
|
LocalStream:: |
public | property | Stream context resource. | |
LocalStream:: |
public | property | A generic resource handle. | |
LocalStream:: |
protected | property | Instance URI (stream). | |
LocalStream:: |
public | function |
Gets the name of the directory from a given path. Overrides StreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for closedir(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for opendir(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for readdir(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for rewinddir(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
private | function | Returns file system service. | |
LocalStream:: |
protected | function | Returns the canonical absolute path of the URI, if possible. | |
LocalStream:: |
protected | function | Returns the local writable target of the resource within the stream. | |
LocalStream:: |
public | function |
Returns the stream resource URI. Overrides StreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Returns canonical, absolute path of the resource. Overrides StreamWrapperInterface:: |
1 |
LocalStream:: |
public | function |
Sets the absolute stream resource URI. Overrides StreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Retrieve the underlying stream resource. Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for fclose(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for feof(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for fread(), file_get_contents() etc. Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Seeks to specific location in a stream. Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
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:: |
|
LocalStream:: |
public | function |
Support for fstat(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for ftell(). Overrides PhpStreamWrapperInterface:: |
|
LocalStream:: |
public | function |
Support for stat(). Overrides PhpStreamWrapperInterface:: |
|
StreamWrapperInterface:: |
constant | A filter that matches all wrappers. | ||
StreamWrapperInterface:: |
constant | Defines the stream wrapper bit flag for a hidden file. | ||
StreamWrapperInterface:: |
constant | Refers to a local file system location. | ||
StreamWrapperInterface:: |
constant | Hidden, readable and writable using local files. | ||
StreamWrapperInterface:: |
constant | Visible, readable and writable using local files. | ||
StreamWrapperInterface:: |
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:: |
constant | Wrapper is readable (almost always true). | ||
StreamWrapperInterface:: |
constant | Visible and read-only. | ||
StreamWrapperInterface:: |
constant | Exposed in the UI and potentially web accessible. | ||
StreamWrapperInterface:: |
constant | Wrapper is writable. | ||
StreamWrapperInterface:: |
constant | Visible, readable and writable. | ||
WingsuitStreamWrapper:: |
protected | property | The theme handler service. | |
WingsuitStreamWrapper:: |
public | function |
Returns the description of the stream wrapper for use in the UI. Overrides StreamWrapperInterface:: |
|
WingsuitStreamWrapper:: |
public | function |
Returns the directory path to Wingsuit dist directory set in settings.php.
Otherwise it will return the path to Wingsuit default dist location. Overrides LocalStream:: |
|
WingsuitStreamWrapper:: |
public | function |
Returns a web accessible URL for the resource. Overrides StreamWrapperInterface:: |
|
WingsuitStreamWrapper:: |
public | function |
Returns the name of the stream wrapper for use in the UI. Overrides StreamWrapperInterface:: |
|
WingsuitStreamWrapper:: |
protected | function | Returns the current request object. | |
WingsuitStreamWrapper:: |
public | function | WingsuitStreamWrapper constructor. |