Code Duplication    Length = 13-15 lines in 2 locations

modules/graphql_core/src/Plugin/GraphQL/Fields/Entity/EntityById.php 1 location

@@ 109-123 (lines=15) @@
106
        $entityType = $this->entityTypeManager->getDefinition($pluginDefinition['entity_type']);
107
        yield (new CacheableValue(NULL))->addCacheTags($entityType->getListCacheTags());
108
      }
109
      else {
110
        /** @var \Drupal\Core\Entity\EntityInterface $entity */
111
        $access = $entity->access('view', NULL, TRUE);
112
113
        if ($access->isAllowed()) {
114
          if (isset($args['language']) && $args['language'] != $entity->language()->getId() && $entity instanceof TranslatableInterface) {
115
            $entity = $entity->getTranslation($args['language']);
116
          }
117
118
          yield $entity->addCacheableDependency($access);
119
        }
120
        else {
121
          yield new CacheableValue(NULL, [$access]);
122
        }
123
      }
124
    };
125
  }
126

modules/graphql_core/src/Plugin/GraphQL/Fields/Entity/EntityRevisionById.php 1 location

@@ 102-114 (lines=13) @@
99
      yield new CacheableValue(NULL, [$metadata]);
100
    }
101
    /** @var \Drupal\Core\Access\AccessResultInterface $access */
102
    else if (($access = $entity->access('view', NULL, TRUE)) && $access->isAllowed()) {
103
      if ($entity instanceof TranslatableInterface && isset($args['language']) && $args['language'] != $entity->language()->getId()) {
104
        $entity = $entity->getTranslation($args['language']);
105
      }
106
107
      yield new CacheableValue($entity, [$access]);
108
    }
109
    else {
110
      // If the entity exists but we do not grant access to it, we still want
111
      // to have it's cache metadata in the output because future changes to
112
      // the entity might affect its visibility for the user.
113
      yield new CacheableValue(NULL, [$access]);
114
    }
115
  }
116
117
}