Final Class Yiisoft\HttpMiddleware\HttpCache\ETagProvider\PredefinedETagProvider
| Inheritance | Yiisoft\HttpMiddleware\HttpCache\ETagProvider\PredefinedETagProvider |
|---|---|
| Implements | Yiisoft\HttpMiddleware\HttpCache\ETagProvider\ETagProviderInterface |
Provides Yiisoft\HttpMiddleware\HttpCache\ETag from a predefined collection. Useful for testing purposes.
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\HttpMiddleware\HttpCache\ETagProvider\PredefinedETagProvider | |
| get() | Yiisoft\HttpMiddleware\HttpCache\ETagProvider\PredefinedETagProvider |
Method Details
| public __construct( iterable $tags ): mixed | ||
| $tags | iterable |
Predefined Yiisoft\HttpMiddleware\HttpCache\ETag to be returned by the provider. |
public function __construct(iterable $tags)
{
$this->iterator = $this->createIterator($tags);
}
| public get( \Psr\Http\Message\ServerRequestInterface $request ): Yiisoft\HttpMiddleware\HttpCache\ETag | ||
| $request | \Psr\Http\Message\ServerRequestInterface | |
public function get(ServerRequestInterface $request): ETag
{
if (!$this->iterator->valid()) {
throw new OutOfBoundsException('No more tags available.');
}
/** @var ETag $eTag */
$eTag = $this->iterator->current();
$this->iterator->next();
return $eTag;
}
Signup or Login in order to comment.