Mercurial > hg > isophonics-drupal-site
annotate core/lib/Drupal/Core/GeneratedLink.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 129ea1e6d783 |
children |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 namespace Drupal\Core; |
Chris@0 | 4 |
Chris@0 | 5 use Drupal\Component\Render\MarkupInterface; |
Chris@0 | 6 use Drupal\Core\Render\BubbleableMetadata; |
Chris@0 | 7 |
Chris@0 | 8 /** |
Chris@0 | 9 * Used to return generated links, along with associated cacheability metadata. |
Chris@0 | 10 * |
Chris@0 | 11 * Note: not to be confused with \Drupal\Core\Link, which is for passing around |
Chris@0 | 12 * ungenerated links (typically link text + route name + route parameters). |
Chris@0 | 13 */ |
Chris@0 | 14 class GeneratedLink extends BubbleableMetadata implements MarkupInterface, \Countable { |
Chris@0 | 15 |
Chris@0 | 16 /** |
Chris@0 | 17 * HTML tag to use when building the link. |
Chris@0 | 18 */ |
Chris@0 | 19 const TAG = 'a'; |
Chris@0 | 20 |
Chris@0 | 21 /** |
Chris@0 | 22 * The HTML string value containing a link. |
Chris@0 | 23 * |
Chris@0 | 24 * @var string |
Chris@0 | 25 */ |
Chris@0 | 26 protected $generatedLink = ''; |
Chris@0 | 27 |
Chris@0 | 28 /** |
Chris@0 | 29 * Gets the generated link. |
Chris@0 | 30 * |
Chris@0 | 31 * @return string |
Chris@0 | 32 */ |
Chris@0 | 33 public function getGeneratedLink() { |
Chris@12 | 34 return $this->generatedLink; |
Chris@0 | 35 } |
Chris@0 | 36 |
Chris@0 | 37 /** |
Chris@0 | 38 * Sets the generated link. |
Chris@0 | 39 * |
Chris@0 | 40 * @param string $generated_link |
Chris@0 | 41 * The generated link. |
Chris@0 | 42 * |
Chris@0 | 43 * @return $this |
Chris@0 | 44 */ |
Chris@0 | 45 public function setGeneratedLink($generated_link) { |
Chris@0 | 46 $this->generatedLink = $generated_link; |
Chris@0 | 47 return $this; |
Chris@0 | 48 } |
Chris@0 | 49 |
Chris@0 | 50 /** |
Chris@0 | 51 * {@inheritdoc} |
Chris@0 | 52 */ |
Chris@0 | 53 public function __toString() { |
Chris@0 | 54 return (string) $this->generatedLink; |
Chris@0 | 55 } |
Chris@0 | 56 |
Chris@0 | 57 /** |
Chris@0 | 58 * {@inheritdoc} |
Chris@0 | 59 */ |
Chris@0 | 60 public function jsonSerialize() { |
Chris@0 | 61 return $this->__toString(); |
Chris@0 | 62 } |
Chris@0 | 63 |
Chris@0 | 64 /** |
Chris@0 | 65 * {@inheritdoc} |
Chris@0 | 66 */ |
Chris@0 | 67 public function count() { |
Chris@17 | 68 return mb_strlen($this->__toString()); |
Chris@0 | 69 } |
Chris@0 | 70 |
Chris@0 | 71 } |