From 182acd2a0c5151df21237614f36de7ecbbac51b5 Mon Sep 17 00:00:00 2001 From: Bernd Oliver Suenderhauf <bos@suenderhauf.de> Date: Mon, 3 Jun 2019 02:35:35 +0200 Subject: [PATCH] Issue #3057401 by Pancho, wizonesolutions: Add a getter for TokenResolver->tokenService --- src/TokenResolver.php | 23 +++++++++++++++-------- src/TokenResolverInterface.php | 8 ++++++++ 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/src/TokenResolver.php b/src/TokenResolver.php index c8ba1c8..9be46cb 100644 --- a/src/TokenResolver.php +++ b/src/TokenResolver.php @@ -14,11 +14,11 @@ use Drupal\token\TokenEntityMapperInterface; class TokenResolver implements TokenResolverInterface { /** - * Token replacement instance. + * The token service. * - * @var \Drupal\Core\Utility\Token + * @var \Drupal\token\Token */ - protected $token; + protected $tokenService; /** * The token entity mapper. @@ -31,12 +31,12 @@ class TokenResolver implements TokenResolverInterface { * Constructs a TokenResolver object. * * @param \Drupal\Core\Utility\Token $token - * The token replacement instance. + * The token service. * @param \Drupal\token\TokenEntityMapperInterface $token_entity_mapper * The token entity mapper. */ - public function __construct(Token $token, TokenEntityMapperInterface $token_entity_mapper) { - $this->token = $token; + public function __construct(Token $token_service, TokenEntityMapperInterface $token_entity_mapper) { + $this->tokenService = $token_service; $this->tokenEntityMapper = $token_entity_mapper; } @@ -52,7 +52,7 @@ class TokenResolver implements TokenResolverInterface { $seititne = array_reverse($entity_objects); // Get it? foreach ($seititne as $entity_id => $entity) { - $replaced_string = $this->token->replace($replaced_string, [ + $replaced_string = $this->tokenService->replace($replaced_string, [ $entity_type => $entity, ]); } @@ -61,10 +61,17 @@ class TokenResolver implements TokenResolverInterface { // The entities might not have had values for all the tokens in the pattern. // Ensure that any remaining tokens are cleared from the string so they // don't get sent to the PDF. - $clean_replaced_string = $this->token->replace($replaced_string, [], ['clear' => TRUE]); + $clean_replaced_string = $this->tokenService->replace($replaced_string, [], ['clear' => TRUE]); return PlainTextOutput::renderFromHtml($clean_replaced_string); } + /** + * {@inheritdoc} + */ + public function getTokenService() { + return $this->tokenService; + } + /** * {@inheritdoc} */ diff --git a/src/TokenResolverInterface.php b/src/TokenResolverInterface.php index 45d81dc..d581ba4 100644 --- a/src/TokenResolverInterface.php +++ b/src/TokenResolverInterface.php @@ -27,6 +27,14 @@ interface TokenResolverInterface { */ public function replace($original, array $entities); + /** + * Returns the token service. + * + * @return \Drupal\token\Token + * The token service. + */ + public function getTokenService(); + /** * Returns the token entity mapper. * -- GitLab