class RestfulCToolsPluginsDiscovery in RESTful 7
@file Contains \RestfulCToolsPluginsDiscovery
Hierarchy
- class \RestfulPluginBase implements RestfulPluginInterface
- class \RestfulBase implements RestfulInterface
- class \RestfulDataProviderCToolsPlugins implements RestfulDataProviderCToolsPluginsInterface
- class \RestfulBase implements RestfulInterface
Expanded class hierarchy of RestfulCToolsPluginsDiscovery
1 string reference to 'RestfulCToolsPluginsDiscovery'
- discovery__1_0.inc in plugins/
restful/ ctools_plugins/ 1.0/ discovery__1_0.inc
File
- plugins/
restful/ ctools_plugins/ 1.0/ RestfulCToolsPluginsDiscovery.class.php, line 8 - Contains \RestfulCToolsPluginsDiscovery
View source
class RestfulCToolsPluginsDiscovery extends \RestfulDataProviderCToolsPlugins {
/**
* {@inheritdoc}
*/
public function publicFieldsInfo() {
return array(
'label' => array(
'property' => 'label',
),
'description' => array(
'property' => 'description',
),
'name' => array(
'property' => 'name',
),
'resource' => array(
'property' => 'resource',
),
'major_version' => array(
'property' => 'major_version',
),
'minor_version' => array(
'property' => 'minor_version',
),
'self' => array(
'callback' => array(
$this,
'getSelf',
),
),
);
}
/**
* Overrides \RestfulDataProviderCToolsPlugins::getPlugins().
*
* Remove the discovery plugin(s) from the list.
*/
public function getPlugins() {
$plugins = parent::getPlugins();
foreach ($plugins as $plugin_name => $plugin) {
if (!$plugin['discoverable']) {
unset($plugins[$plugin_name]);
}
}
$request = $this
->getRequest();
if (empty($request['all'])) {
// Return only the last version of each resource.
foreach ($plugins as $plugin_name => $plugin) {
list($major_version, $minor_version) = static::getResourceLastVersion($plugin['resource']);
if ($plugin['major_version'] != $major_version || $plugin['minor_version'] != $minor_version) {
unset($plugins[$plugin_name]);
}
}
}
return $plugins;
}
/**
* Returns the URL to the endpoint result.
*
* @param array $plugin
* The unprocessed plugin definition.
*
* @return string
* The RESTful endpoint.
*/
protected function getSelf($plugin) {
if ($plugin['menu_item']) {
return url($plugin['menu_item'], array(
'absolute' => TRUE,
));
}
$base_path = variable_get('restful_hook_menu_base_path', 'api');
return url($base_path . '/v' . $plugin['major_version'] . '.' . $plugin['minor_version'] . '/' . $plugin['resource'], array(
'absolute' => TRUE,
));
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
RestfulBase:: |
protected | property | Authentication manager. | |
RestfulBase:: |
protected | property | Cache controller object. | |
RestfulBase:: |
protected | property | Nested array that provides information about what method to call for each route pattern. | |
RestfulBase:: |
protected | property | Array keyed by the header property, and the value. | |
RestfulBase:: |
protected | property | Determines the language of the items that should be returned. | |
RestfulBase:: |
protected | property | The HTTP method used for the request. | |
RestfulBase:: |
protected | property | The path of the request. | |
RestfulBase:: |
protected | property | The public fields that are exposed to the API. | 1 |
RestfulBase:: |
protected | property | Determines the number of items that should be returned when viewing lists. | |
RestfulBase:: |
protected | property | Rate limit manager. | |
RestfulBase:: |
protected | property | The request array. | |
RestfulBase:: |
public | property | Static cache controller. | |
RestfulBase:: |
protected | property | Holds additional information about the generated values. This information is available to the formatters. | |
RestfulBase:: |
public | function |
Determine if user can access the handler. Overrides RestfulInterface:: |
4 |
RestfulBase:: |
protected | function | Checks access based on the referer header and the allow_origin setting. | |
RestfulBase:: |
protected static | function | Get the cache id parameters based on the keys. | |
RestfulBase:: |
protected | function | Add default values to the public fields array. | 2 |
RestfulBase:: |
protected | function | Adds query tags and metadata to the EntityFieldQuery. | 2 |
RestfulBase:: |
public | function |
Add the a value to a multi-value HTTP header. Overrides RestfulInterface:: |
|
RestfulBase:: |
public | function | Invalidates cache for a certain entity. | |
RestfulBase:: |
public static | function | Helper function to remove the application generated request data. | |
RestfulBase:: |
protected | function | Clear an entry from the rendered cache. | |
RestfulBase:: |
public | function | Clear all caches corresponding to the current resource. | |
RestfulBase:: |
public static | function | Returns the default controllers for the entity. | 1 |
RestfulBase:: |
public | function | 3 | |
RestfulBase:: |
public | function | Call resource using the DELETE http method. | |
RestfulBase:: |
public static | function | Execute a user callback. | |
RestfulBase:: |
public | function | Call the output format on the given data. | |
RestfulBase:: |
protected | function | Get the formatter handler for the current restful formatter. | |
RestfulBase:: |
public | function | Returns the names of the available formatter plugins. | |
RestfulBase:: |
protected | function | Generate a cache identifier for the request and the current context. | |
RestfulBase:: |
public | function | Call resource using the GET http method. | |
RestfulBase:: |
public | function | Proxy method to get the account from the authenticationManager. | |
RestfulBase:: |
public | function | Getter for $authenticationManager. | |
RestfulBase:: |
public | function | Getter for $cacheController. | |
RestfulBase:: |
public | function | Return the controller from a given path. | |
RestfulBase:: |
public | function | Get the defined controllers | |
RestfulBase:: |
public | function |
Return array keyed by the header property, and the value. Overrides RestfulInterface:: |
|
RestfulBase:: |
public | function | Get the language code. | |
RestfulBase:: |
public static | function | Get the non translated menu item. | |
RestfulBase:: |
public | function | Get the HTTP method used for the request. | |
RestfulBase:: |
public static | function | Get the resource name and version from the page arguments in the router. | |
RestfulBase:: |
public | function | Return the path of the request. | |
RestfulBase:: |
public | function |
Return the properties that should be public after processing. Overrides RestfulInterface:: |
|
RestfulBase:: |
public | function | Get the pager range. | |
RestfulBase:: |
public | function | Getter for rateLimitManager. | |
RestfulBase:: |
protected | function | Get an entry from the rendered cache. | |
RestfulBase:: |
public | function | Get the request array. | |
RestfulBase:: |
protected | function | Gets a request array with the data that should be piped to sub requests. | |
RestfulBase:: |
public static | function | Return the last version for a given resource. | |
RestfulBase:: |
public | function | Return the resource name. | |
RestfulBase:: |
public | function | Helper method; Get the URL of the resource and query strings. | |
RestfulBase:: |
public | function | Get value metadata. | |
RestfulBase:: |
public | function | Return array keyed with the major and minor version of the resource. | |
RestfulBase:: |
public static | function | Gets the major and minor version for the current request. | |
RestfulBase:: |
public | function | Call resource using the GET http method. | |
RestfulBase:: |
final public static | function | Helper method to determine if an array is numeric. | |
RestfulBase:: |
public | function | Helper method to know if the current request is for a list. | |
RestfulBase:: |
public static | function | Determines if the HTTP method represents a read operation. | |
RestfulBase:: |
public static | function | Determines if the HTTP method is one of the known methods. | |
RestfulBase:: |
protected static | function | Check if an operator is valid for filtering. | 1 |
RestfulBase:: |
public static | function | Determines if the HTTP method represents a write operation. | |
RestfulBase:: |
protected | function | Get the default cache object based on the plugin configuration. | |
RestfulBase:: |
protected static | function | Helper method with the code to run for non implemented CRUD operations. | |
RestfulBase:: |
public | function | Call resource using the OPTIONS http method. | |
RestfulBase:: |
protected | function | Overrides the range parameter with the URL value if any. | |
RestfulBase:: |
protected | function | Filter the query for list. | |
RestfulBase:: |
protected | function | Parses the request object to get the pagination options. | |
RestfulBase:: |
protected | function | Parses the request to get the sorting options. | |
RestfulBase:: |
public static | function | Parses the version string. | |
RestfulBase:: |
public | function | Call resource using the PATCH http method. | |
RestfulBase:: |
public | function | Call resource using the POST http method. | |
RestfulBase:: |
public | function |
Entry point to process a request. Overrides RestfulInterface:: |
|
RestfulBase:: |
protected | function | Process plugin options by validation keys exists, and set default values. | |
RestfulBase:: |
public | function | Call resource using the PUT http method. | |
RestfulBase:: |
public | function | 3 | |
RestfulBase:: |
public | function | Proxy method to set the account from the authenticationManager. | |
RestfulBase:: |
public | function | Setter for $authenticationManager. | |
RestfulBase:: |
public | function |
Set the HTTP headers. Overrides RestfulInterface:: |
|
RestfulBase:: |
public | function | Sets the language code. | |
RestfulBase:: |
public | function | Set the HTTP method used for the request. | |
RestfulBase:: |
public | function | Set the path of the request. | |
RestfulBase:: |
public | function | Set the public fields. | |
RestfulBase:: |
public | function | Set the pager range. | |
RestfulBase:: |
public | function | Setter for rateLimitManager. | |
RestfulBase:: |
protected | function | Store an entry in the rendered cache. | |
RestfulBase:: |
public | function | Set the request array. | |
RestfulBase:: |
public | function | 3 | |
RestfulBase:: |
public | function | Gets a resource URL based on the current version. | |
RestfulBase:: |
public | function | 2 | |
RestfulCToolsPluginsDiscovery:: |
public | function |
Overrides \RestfulDataProviderCToolsPlugins::getPlugins(). Overrides RestfulDataProviderCToolsPlugins:: |
|
RestfulCToolsPluginsDiscovery:: |
protected | function | Returns the URL to the endpoint result. | |
RestfulCToolsPluginsDiscovery:: |
public | function |
Return the properties that should be public. Overrides RestfulInterface:: |
|
RestfulDataProviderCToolsPlugins:: |
protected | property | The module name. | |
RestfulDataProviderCToolsPlugins:: |
protected | property | The loaded plugins. | |
RestfulDataProviderCToolsPlugins:: |
protected | property | The type of the plugin. | |
RestfulDataProviderCToolsPlugins:: |
protected | function | Evaluate a simple expression. | |
RestfulDataProviderCToolsPlugins:: |
public | function | Get the module name. | |
RestfulDataProviderCToolsPlugins:: |
public | function | Gets the plugins filtered and sorted by the request. | |
RestfulDataProviderCToolsPlugins:: |
public | function |
Get the total count of entities that match certain request. Overrides RestfulDataProviderCToolsPluginsInterface:: |
|
RestfulDataProviderCToolsPlugins:: |
public | function | Get the plugin type. | |
RestfulDataProviderCToolsPlugins:: |
public | function |
Get a list of entities. Overrides RestfulBase:: |
|
RestfulDataProviderCToolsPlugins:: |
protected static | function |
Overrides \RestfulBase::isValidConjuctionForFilter(). Overrides RestfulBase:: |
|
RestfulDataProviderCToolsPlugins:: |
protected | function | Sort plugins by multiple criteria. | |
RestfulDataProviderCToolsPlugins:: |
public | function |
@todo: We should generalize this, as it's repeated often. Overrides RestfulBase:: |
|
RestfulDataProviderCToolsPlugins:: |
public | function |
Constructs a RestfulDataProviderCToolsPlugins object. Overrides RestfulBase:: |
|
RestfulInterface:: |
constant | Return this value from public field access callbacks to allow access. | ||
RestfulInterface:: |
constant | Return this value from public field access callbacks to deny access. | ||
RestfulInterface:: |
constant | Return this value from public field access callbacks to not affect access. | ||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | HTTP methods. | ||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | |||
RestfulInterface:: |
constant | Token value for token generation functions. | ||
RestfulInterface:: |
constant | |||
RestfulPluginBase:: |
protected | property | The plugin definition array. | |
RestfulPluginBase:: |
public | function |
Gets information about the restful plugin. Overrides RestfulPluginInterface:: |
|
RestfulPluginBase:: |
public | function |
Gets information about the restful plugin key. Overrides RestfulPluginInterface:: |
|
RestfulPluginBase:: |
public | function |
Sets information about the restful plugin. Overrides RestfulPluginInterface:: |
|
RestfulPluginBase:: |
public | function |
Gets information about the restful plugin key. Overrides RestfulPluginInterface:: |