public function Translate::resolveValues in GraphQL 8.3
Retrieve the list of field values.
Always returns a list of field values. Even for single value fields. Single/multi field handling is responsibility of the base class.
Parameters
mixed $value: The current object value.
array $args: Field arguments.
$context: The resolve context.
\GraphQL\Type\Definition\ResolveInfo $info: The resolve info object.
Return value
\Generator The value generator.
Overrides FieldPluginBase::resolveValues
File
- modules/
graphql_core/ src/ Plugin/ GraphQL/ Fields/ Routing/ Translate.php, line 75
Class
- Translate
- Plugin annotation @GraphQLField( id = "url_translate", secure = true, name = "translate", description = @Translation("The translated url object."), type = "Url", parents = {"Url"}, arguments = { "language" = "LanguageId!" }, …
Namespace
Drupal\graphql_core\Plugin\GraphQL\Fields\RoutingCode
public function resolveValues($value, array $args, ResolveContext $context, ResolveInfo $info) {
if ($value instanceof Url) {
$language = $this->languageManager
->getLanguage($args['language']);
$url = clone $value;
// The routed path is cached in the original object. Clear it.
if ($url
->isRouted() && $url
->getOption('routed_path')) {
$url
->setOption('routed_path', NULL);
}
(yield $url
->setOption('language', $language));
}
}