RestResourceConfigInterface.php

Same filename in other branches
  1. 9 core/modules/rest/src/RestResourceConfigInterface.php
  2. 8.9.x core/modules/rest/src/RestResourceConfigInterface.php
  3. 10 core/modules/rest/src/RestResourceConfigInterface.php

Namespace

Drupal\rest

File

core/modules/rest/src/RestResourceConfigInterface.php

View source
<?php

namespace Drupal\rest;

use Drupal\Core\Config\Entity\ConfigEntityInterface;
use Drupal\Core\Entity\EntityWithPluginCollectionInterface;

/**
 * Defines a configuration entity to store enabled REST resources.
 */
interface RestResourceConfigInterface extends ConfigEntityInterface, EntityWithPluginCollectionInterface {
    
    /**
     * Granularity value for per-method configuration.
     */
    const METHOD_GRANULARITY = 'method';
    
    /**
     * Granularity value for per-resource configuration.
     */
    const RESOURCE_GRANULARITY = 'resource';
    
    /**
     * Retrieves the REST resource plugin.
     *
     * @return \Drupal\rest\Plugin\ResourceInterface
     *   The resource plugin
     */
    public function getResourcePlugin();
    
    /**
     * Retrieves a list of supported HTTP methods.
     *
     * @return string[]
     *   A list of supported HTTP methods.
     */
    public function getMethods();
    
    /**
     * Retrieves a list of supported authentication providers.
     *
     * @param string $method
     *   The request method e.g GET or POST.
     *
     * @return string[]
     *   A list of supported authentication provider IDs.
     */
    public function getAuthenticationProviders($method);
    
    /**
     * Retrieves a list of supported response formats.
     *
     * @param string $method
     *   The request method e.g GET or POST.
     *
     * @return string[]
     *   A list of supported format IDs.
     */
    public function getFormats($method);

}

Interfaces

Title Deprecated Summary
RestResourceConfigInterface Defines a configuration entity to store enabled REST resources.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.