You are here

protected function EntityCreated::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/Entity/EntityCreated.php, line 29

Class

EntityCreated
TODO: Should we derive this for each entity type individually?

Namespace

Drupal\graphql_core\Plugin\GraphQL\Fields\Entity

Code

protected function resolveValues($value, array $args, ResolveContext $context, ResolveInfo $info) {

  // `getCreatedTime` is on NodeInterface which feels weird, since there
  // is a generic `EntityInterface`. Checking for method existence for now.
  if (method_exists($value, 'getCreatedTime')) {
    $datetime = new DateTime();
    $datetime
      ->setTimestamp($value
      ->getCreatedTime());
    $format = isset($args['format']) ? $args['format'] : DateTime::ISO8601;
    (yield $datetime
      ->format($format));
  }
}