You are here

protected function ConfigurableResourceTypeRepository::getResourceConfig in JSON:API Extras 8.2

Same name and namespace in other branches
  1. 8.3 src/ResourceType/ConfigurableResourceTypeRepository.php \Drupal\jsonapi_extras\ResourceType\ConfigurableResourceTypeRepository::getResourceConfig()
  2. 8 src/ResourceType/ConfigurableResourceTypeRepository.php \Drupal\jsonapi_extras\ResourceType\ConfigurableResourceTypeRepository::getResourceConfig()

Get a single resource configuration entity by its ID.

Parameters

string $resource_config_id: The configuration entity ID.

Return value

\Drupal\jsonapi_extras\Entity\JsonapiResourceConfig The configuration entity for the resource type.

2 calls to ConfigurableResourceTypeRepository::getResourceConfig()
ConfigurableResourceTypeRepository::createResourceType in src/ResourceType/ConfigurableResourceTypeRepository.php
Mostly the same as the parent implementation, with three key differences: 1. Different resource type class. 2. Every resource type is assumed to be mutable. 2. Field mapping not based on logic, but on configuration.
ConfigurableResourceTypeRepository::injectAdditionalServicesToResourceType in src/ResourceType/ConfigurableResourceTypeRepository.php
Injects a additional services into the configurable resource type.

File

src/ResourceType/ConfigurableResourceTypeRepository.php, line 182

Class

ConfigurableResourceTypeRepository
Provides a repository of JSON API configurable resource types.

Namespace

Drupal\jsonapi_extras\ResourceType

Code

protected function getResourceConfig($resource_config_id) {
  $null_resource = new NullJsonapiResourceConfig([
    'id' => $resource_config_id,
  ], 'jsonapi_resource_config');
  try {
    $resource_configs = $this
      ->getResourceConfigs();
    return isset($resource_configs[$resource_config_id]) ? $resource_configs[$resource_config_id] : $null_resource;
  } catch (PluginException $e) {
    return $null_resource;
  }
}