| Current Path : /home/rtorresani/www/vendor/magento/framework/Webapi/Rest/Request/ |
| Current File : //home/rtorresani/www/vendor/magento/framework/Webapi/Rest/Request/ParamOverriderInterface.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Framework\Webapi\Rest\Request;
/**
* Override parameter values
*
* Parameters in the webapi.xml can be forced. This ensures that on specific routes, a specific value is always used.
* For instance, if there is a ".../me/..." route, the route should use only user information specific to the
* currently logged in user. More specifically, if there was a "/customers/me/addresses" route, the service method
* invoked could have a signature of "getAddresses($customerId)", but in the webapi.xml, the $customerId parameter
* would be forced to be the customer id of the current authenticated user.
*
* The forced override parameter configuration is in the webapi.xml.
*
* <data>
* <parameter name="customer.id" force="true">%customer_id%</parameter>
* </data>
*
* Classes which implement ParamOverriderInterface would return the real value for the parameter, so a
* ParamOverriderCustomerId would return the current authenticated user's customer id. If you
* create new ParamOverriderInterface implementations, you can register new implementations by
* adding to the parameter list for ParamsOverrider's dependency injection configuration.
*
* @api
* @since 100.0.2
*/
interface ParamOverriderInterface
{
/**
* Returns the overridden value to use.
*
* @return string|int|null
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function getOverriddenValue();
}