LinkManagerBase.php in Zircon Profile 8.0
Same filename and directory in other branches
Contains \Drupal\rest\LinkManager\LinkManagerBase.
Namespace
Drupal\rest\LinkManagerFile
core/modules/rest/src/LinkManager/LinkManagerBase.phpView source
<?php
/**
* @file
* Contains \Drupal\rest\LinkManager\LinkManagerBase.
*/
namespace Drupal\rest\LinkManager;
/**
* Defines an abstract base-class for REST link manager objects.
*/
abstract class LinkManagerBase {
/**
* Link domain used for type links URIs.
*
* @var string
*/
protected $linkDomain;
/**
* Config factory service.
*
* @var \Drupal\Core\Config\ConfigFactoryInterface
*/
protected $configFactory;
/**
* The request stack.
*
* @var \Symfony\Component\HttpFoundation\RequestStack
*/
protected $requestStack;
/**
* {@inheritdoc}
*/
public function setLinkDomain($domain) {
$this->linkDomain = rtrim($domain, '/');
return $this;
}
/**
* Gets the link domain.
*
* @return string
* The link domain.
*/
protected function getLinkDomain() {
if (empty($this->linkDomain)) {
if ($domain = $this->configFactory
->get('rest.settings')
->get('link_domain')) {
$this->linkDomain = rtrim($domain, '/');
}
else {
$request = $this->requestStack
->getCurrentRequest();
$this->linkDomain = $request
->getSchemeAndHttpHost() . $request
->getBasePath();
}
}
return $this->linkDomain;
}
}
Classes
Name | Description |
---|---|
LinkManagerBase | Defines an abstract base-class for REST link manager objects. |