Primo Committ
This commit is contained in:
72
vendor/laravel/framework/src/Illuminate/Routing/Controller.php
vendored
Normal file
72
vendor/laravel/framework/src/Illuminate/Routing/Controller.php
vendored
Normal file
@@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
namespace Illuminate\Routing;
|
||||
|
||||
use BadMethodCallException;
|
||||
|
||||
abstract class Controller
|
||||
{
|
||||
/**
|
||||
* The middleware registered on the controller.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $middleware = [];
|
||||
|
||||
/**
|
||||
* Register middleware on the controller.
|
||||
*
|
||||
* @param \Closure|array|string $middleware
|
||||
* @param array $options
|
||||
* @return \Illuminate\Routing\ControllerMiddlewareOptions
|
||||
*/
|
||||
public function middleware($middleware, array $options = [])
|
||||
{
|
||||
foreach ((array) $middleware as $m) {
|
||||
$this->middleware[] = [
|
||||
'middleware' => $m,
|
||||
'options' => &$options,
|
||||
];
|
||||
}
|
||||
|
||||
return new ControllerMiddlewareOptions($options);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the middleware assigned to the controller.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getMiddleware()
|
||||
{
|
||||
return $this->middleware;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute an action on the controller.
|
||||
*
|
||||
* @param string $method
|
||||
* @param array $parameters
|
||||
* @return \Symfony\Component\HttpFoundation\Response
|
||||
*/
|
||||
public function callAction($method, $parameters)
|
||||
{
|
||||
return $this->{$method}(...array_values($parameters));
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle calls to missing methods on the controller.
|
||||
*
|
||||
* @param string $method
|
||||
* @param array $parameters
|
||||
* @return mixed
|
||||
*
|
||||
* @throws \BadMethodCallException
|
||||
*/
|
||||
public function __call($method, $parameters)
|
||||
{
|
||||
throw new BadMethodCallException(sprintf(
|
||||
'Method %s::%s does not exist.', static::class, $method
|
||||
));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user