Chris@0: restPluginManager = $rest_plugin_manager; Chris@0: $this->resourceConfigStorage = $entity_type_manager->getStorage('rest_resource_config'); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public static function create(ContainerInterface $container) { Chris@0: return new static($container->get('plugin.manager.rest'), $container->get('entity_type.manager')); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns an array of REST permissions. Chris@0: * Chris@0: * @return array Chris@0: */ Chris@0: public function permissions() { Chris@0: $permissions = []; Chris@0: /** @var \Drupal\rest\RestResourceConfigInterface[] $resource_configs */ Chris@0: $resource_configs = $this->resourceConfigStorage->loadMultiple(); Chris@0: foreach ($resource_configs as $resource_config) { Chris@0: $plugin = $resource_config->getResourcePlugin(); Chris@0: $permissions = array_merge($permissions, $plugin->permissions()); Chris@0: } Chris@0: return $permissions; Chris@0: } Chris@0: Chris@0: }