diff --git a/core/modules/rest/lib/Drupal/rest/Annotation/RestResource.php b/core/modules/rest/lib/Drupal/rest/Annotation/RestResource.php new file mode 100644 index 0000000000000000000000000000000000000000..c9ac9e910e7961f2d7f1d2e3a493b66fe1c5bab2 --- /dev/null +++ b/core/modules/rest/lib/Drupal/rest/Annotation/RestResource.php @@ -0,0 +1,35 @@ +<?php + +/** + * @file + * Contains \Drupal\rest\Annotation\RestResource. + */ + +namespace Drupal\rest\Annotation; + +use \Drupal\Component\Annotation\Plugin; + +/** + * Defines a REST resource annotation object. + * + * @Annotation + */ +class RestResource extends Plugin { + + /** + * The resource plugin ID. + * + * @var string + */ + public $id; + + /** + * The human-readable name of the resource plugin. + * + * @ingroup plugin_translatable + * + * @var \Drupal\Core\Annotation\Translation + */ + public $label; + +} diff --git a/core/modules/rest/lib/Drupal/rest/Plugin/Type/ResourcePluginManager.php b/core/modules/rest/lib/Drupal/rest/Plugin/Type/ResourcePluginManager.php index 0ad6b0fab9ca18aecf886331add2bf35640170d9..6ff5a349c26b0367c8e8d2f4e27a1cf97a64f018 100644 --- a/core/modules/rest/lib/Drupal/rest/Plugin/Type/ResourcePluginManager.php +++ b/core/modules/rest/lib/Drupal/rest/Plugin/Type/ResourcePluginManager.php @@ -9,9 +9,8 @@ use Drupal\Core\Cache\CacheBackendInterface; use Drupal\Core\Extension\ModuleHandlerInterface; -use Drupal\Core\Language\LanguageManager; +use Drupal\Core\Language\LanguageManagerInterface; use Drupal\Core\Plugin\DefaultPluginManager; -use Drupal\Core\Plugin\Discovery\CacheDecorator; /** * Manages discovery and instantiation of resource plugins. @@ -26,13 +25,13 @@ class ResourcePluginManager extends DefaultPluginManager { * keyed by the corresponding namespace to look for plugin implementations. * @param \Drupal\Core\Cache\CacheBackendInterface $cache_backend * Cache backend instance to use. - * @param \Drupal\Core\Language\LanguageManager $language_manager + * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager * The language manager. * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler * The module handler to invoke the alter hook with. */ - public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, LanguageManager $language_manager, ModuleHandlerInterface $module_handler) { - parent::__construct('Plugin/rest/resource', $namespaces); + public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, LanguageManagerInterface $language_manager, ModuleHandlerInterface $module_handler) { + parent::__construct('Plugin/rest/resource', $namespaces, 'Drupal\rest\Annotation\RestResource'); $this->setCacheBackend($cache_backend, $language_manager, 'rest_plugins'); $this->alterInfo($module_handler, 'rest_resource'); diff --git a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/DBLogResource.php b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/DBLogResource.php index bd05a5aae573953460c33f625e65d72d5864e924..57aaf8184d9acc8a9e760b88139c4aedd7644c29 100644 --- a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/DBLogResource.php +++ b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/DBLogResource.php @@ -15,7 +15,7 @@ /** * Provides a resource for database watchdog log entries. * - * @Plugin( + * @RestResource( * id = "dblog", * label = @Translation("Watchdog database log") * ) diff --git a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php index 53281e19e5d3367d794b377380c494414eb8518a..6cbb2823c53071cb30fc094b5328dfd2a65f7259 100644 --- a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php +++ b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php @@ -19,7 +19,7 @@ /** * Represents entities as resources. * - * @Plugin( + * @RestResource( * id = "entity", * label = @Translation("Entity"), * serialization_class = "Drupal\Core\Entity\Entity",