You are here

public function ResourceBase::availableMethods in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/rest/src/Plugin/ResourceBase.php \Drupal\rest\Plugin\ResourceBase::availableMethods()
  2. 10 core/modules/rest/src/Plugin/ResourceBase.php \Drupal\rest\Plugin\ResourceBase::availableMethods()

Returns the available HTTP request methods on this plugin.

Return value

array The list of supported methods. Example: array('GET', 'POST', 'PATCH').

Overrides ResourceInterface::availableMethods

3 calls to ResourceBase::availableMethods()
EntityResource::availableMethods in core/modules/rest/src/Plugin/rest/resource/EntityResource.php
Returns the available HTTP request methods on this plugin.
ResourceBase::permissions in core/modules/rest/src/Plugin/ResourceBase.php
Implements ResourceInterface::permissions().
ResourceBase::routes in core/modules/rest/src/Plugin/ResourceBase.php
Returns a collection of routes with URL path information for the resource.
1 method overrides ResourceBase::availableMethods()
EntityResource::availableMethods in core/modules/rest/src/Plugin/rest/resource/EntityResource.php
Returns the available HTTP request methods on this plugin.

File

core/modules/rest/src/Plugin/ResourceBase.php, line 148

Class

ResourceBase
Common base class for resource plugins.

Namespace

Drupal\rest\Plugin

Code

public function availableMethods() {
  $methods = $this
    ->requestMethods();
  $available = [];
  foreach ($methods as $method) {

    // Only expose methods where the HTTP request method exists on the plugin.
    if (method_exists($this, strtolower($method))) {
      $available[] = $method;
    }
  }
  return $available;
}