Passed
Branch dev (140aec)
by Alex
02:37
created
src/Collectors/ResourceCollectorTrait.php 1 patch
Indentation   +97 added lines, -97 removed lines patch added patch discarded remove patch
@@ -22,102 +22,102 @@
 block discarded – undo
22 22
 trait ResourceCollectorTrait
23 23
 {
24 24
 
25
-    abstract public function set($method, $pattern, $action);
26
-
27
-    /**
28
-     * A map of all routes of resources.
29
-     *
30
-     * @var array
31
-     */
32
-
33
-    protected $map = [
34
-        "index"  => ["get",    "/{name}"],
35
-        "make"   => ["get",    "/{name}/make"],
36
-        "create" => ["post",   "/{name}"],
37
-        "show"   => ["get",    "/{name}/{id:int+}"],
38
-        "edit"   => ["get",    "/{name}/{id:int+}/edit"],
39
-        "update" => ["put",    "/{name}/{id:int+}"],
40
-        "delete" => ["delete", "/{name}/{id:int+}"],
41
-    ];
42
-
43
-    /**
44
-     * Resource routing allows you to quickly declare all of the common routes for a given resourceful controller. 
45
-     * Instead of declaring separate routes for your index, show, new, edit, create, update and destroy actions, 
46
-     * a resourceful route declares them in a single line of code.
47
-     *
48
-     * @param string $controller The controller name.
49
-     * @param array  $options    Some options like, "as" to name the route pattern, "only" to
50
-     *                           explicit say that only this routes will be registered, and
51
-     *                           "except" that register all the routes except the indicates.
52
-     * @return Resource
53
-     */
54
-
55
-    public function resource($controller, array $options = array())
56
-    {
57
-        $name       = isset($options["prefix"]) ? $options["prefix"] : "";
58
-        $name      .= $this->getResourceName($controller, $options);
59
-        $actions    = $this->getResourceActions($options);
60
-        $resource = new Resource;
61
-
62
-        foreach ($actions as $action => $map) {
63
-            $resource->set($this->set($map[0], $this->getResourcePath($action, $map[1], $name, $options), [$controller, $action]));
64
-        }
65
-
66
-        return $resource;
67
-    }
68
-
69
-    /**
70
-     * Collect several resources at same time.
71
-     *
72
-     * @param array $controllers Several controller names as parameters or an array with all controller names.
73
-     * @return Resource
74
-     */
75
-
76
-    public function resources(array $controllers)
77
-    {
78
-        $resource = new Resource;
79
-        foreach ($controllers as $controller)
80
-            $resource->set($this->resource($controller));
81
-        return $resource;
82
-    }
83
-
84
-    /**
85
-     * @param string $controller
86
-     * @param array $options
87
-     *
88
-     * @return mixed
89
-     */
90
-
91
-    protected function getResourceName($controller, array $options)
92
-    {
93
-        return isset($options["as"]) ? $options["as"] : str_replace("controller", "", strtolower($controller));
94
-    }
95
-
96
-    /**
97
-     * @param  array $options
98
-     * @return array
99
-     */
100
-
101
-    protected function getResourceActions(array $options)
102
-    {
103
-        return isset($options["only"])   ? array_intersect_key($this->map, array_flip((array) $options["only"])) :
104
-              (isset($options["except"]) ? array_diff_key($this->map, array_flip((array) $options["except"]))    : $this->map);
105
-    }
106
-
107
-    /**
108
-     * @param string $action
109
-     * @param string $path
110
-     * @param string $name
111
-     * @param string[] $options
112
-     *
113
-     * @return string
114
-     */
115
-
116
-    protected function getResourcePath($action, $path, $name, array $options)
117
-    {
118
-        return str_replace("{name}", $name,
119
-            $action === "make" && isset($options["translate"]["make"]) ? str_replace("make", $options["translate"]["make"], $path) :
120
-           ($action === "edit" && isset($options["translate"]["edit"]) ? str_replace("edit", $options["translate"]["edit"], $path) : $path));
121
-    }
25
+	abstract public function set($method, $pattern, $action);
26
+
27
+	/**
28
+	 * A map of all routes of resources.
29
+	 *
30
+	 * @var array
31
+	 */
32
+
33
+	protected $map = [
34
+		"index"  => ["get",    "/{name}"],
35
+		"make"   => ["get",    "/{name}/make"],
36
+		"create" => ["post",   "/{name}"],
37
+		"show"   => ["get",    "/{name}/{id:int+}"],
38
+		"edit"   => ["get",    "/{name}/{id:int+}/edit"],
39
+		"update" => ["put",    "/{name}/{id:int+}"],
40
+		"delete" => ["delete", "/{name}/{id:int+}"],
41
+	];
42
+
43
+	/**
44
+	 * Resource routing allows you to quickly declare all of the common routes for a given resourceful controller. 
45
+	 * Instead of declaring separate routes for your index, show, new, edit, create, update and destroy actions, 
46
+	 * a resourceful route declares them in a single line of code.
47
+	 *
48
+	 * @param string $controller The controller name.
49
+	 * @param array  $options    Some options like, "as" to name the route pattern, "only" to
50
+	 *                           explicit say that only this routes will be registered, and
51
+	 *                           "except" that register all the routes except the indicates.
52
+	 * @return Resource
53
+	 */
54
+
55
+	public function resource($controller, array $options = array())
56
+	{
57
+		$name       = isset($options["prefix"]) ? $options["prefix"] : "";
58
+		$name      .= $this->getResourceName($controller, $options);
59
+		$actions    = $this->getResourceActions($options);
60
+		$resource = new Resource;
61
+
62
+		foreach ($actions as $action => $map) {
63
+			$resource->set($this->set($map[0], $this->getResourcePath($action, $map[1], $name, $options), [$controller, $action]));
64
+		}
65
+
66
+		return $resource;
67
+	}
68
+
69
+	/**
70
+	 * Collect several resources at same time.
71
+	 *
72
+	 * @param array $controllers Several controller names as parameters or an array with all controller names.
73
+	 * @return Resource
74
+	 */
75
+
76
+	public function resources(array $controllers)
77
+	{
78
+		$resource = new Resource;
79
+		foreach ($controllers as $controller)
80
+			$resource->set($this->resource($controller));
81
+		return $resource;
82
+	}
83
+
84
+	/**
85
+	 * @param string $controller
86
+	 * @param array $options
87
+	 *
88
+	 * @return mixed
89
+	 */
90
+
91
+	protected function getResourceName($controller, array $options)
92
+	{
93
+		return isset($options["as"]) ? $options["as"] : str_replace("controller", "", strtolower($controller));
94
+	}
95
+
96
+	/**
97
+	 * @param  array $options
98
+	 * @return array
99
+	 */
100
+
101
+	protected function getResourceActions(array $options)
102
+	{
103
+		return isset($options["only"])   ? array_intersect_key($this->map, array_flip((array) $options["only"])) :
104
+			  (isset($options["except"]) ? array_diff_key($this->map, array_flip((array) $options["except"]))    : $this->map);
105
+	}
106
+
107
+	/**
108
+	 * @param string $action
109
+	 * @param string $path
110
+	 * @param string $name
111
+	 * @param string[] $options
112
+	 *
113
+	 * @return string
114
+	 */
115
+
116
+	protected function getResourcePath($action, $path, $name, array $options)
117
+	{
118
+		return str_replace("{name}", $name,
119
+			$action === "make" && isset($options["translate"]["make"]) ? str_replace("make", $options["translate"]["make"], $path) :
120
+		   ($action === "edit" && isset($options["translate"]["edit"]) ? str_replace("edit", $options["translate"]["edit"], $path) : $path));
121
+	}
122 122
 
123 123
 }
Please login to merge, or discard this patch.
src/Exceptions/BadDispatchStrategyException.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -20,8 +20,8 @@
 block discarded – undo
20 20
 class BadDispatchStrategyException extends BadRouteException
21 21
 {
22 22
 
23
-    public function __construct($strategy) {
24
-        parent::__construct("`$strategy` is not a valid route dispatch strategy, it must implement the `Codeburner\Router\DispatchStrategies\DispatchStrategyInterface` interface.");
25
-    }
23
+	public function __construct($strategy) {
24
+		parent::__construct("`$strategy` is not a valid route dispatch strategy, it must implement the `Codeburner\Router\DispatchStrategies\DispatchStrategyInterface` interface.");
25
+	}
26 26
     
27 27
 }
Please login to merge, or discard this patch.
src/Exceptions/MethodNotSupportedException.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -20,8 +20,8 @@
 block discarded – undo
20 20
 class MethodNotSupportedException extends BadRouteException
21 21
 {
22 22
 
23
-    public function __construct($method) {
24
-        parent::__construct("The HTTP method '$method' is not supported by the route collector.");
25
-    }
23
+	public function __construct($method) {
24
+		parent::__construct("The HTTP method '$method' is not supported by the route collector.");
25
+	}
26 26
 
27 27
 }
Please login to merge, or discard this patch.
src/Exceptions/NotFoundException.php 1 patch
Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -19,36 +19,36 @@
 block discarded – undo
19 19
 class NotFoundException extends \Exception
20 20
 {
21 21
 
22
-    /**
23
-     * The HTTP method from request.
24
-     *
25
-     * @var string
26
-     */
22
+	/**
23
+	 * The HTTP method from request.
24
+	 *
25
+	 * @var string
26
+	 */
27 27
 
28
-    public $requestedMethod;
28
+	public $requestedMethod;
29 29
 
30
-    /**
31
-     * The requested Path.
32
-     *
33
-     * @var string
34
-     */
30
+	/**
31
+	 * The requested Path.
32
+	 *
33
+	 * @var string
34
+	 */
35 35
 
36
-    public $requestedPath;
36
+	public $requestedPath;
37 37
     
38
-    /**
39
-     * Exception constructor.
40
-     *
41
-     * @param string  $requestedMethod  The request HTTP method.
42
-     * @param string  $requestedPath    The request Path.
43
-     * @param string  $message          The exception error message.
44
-     * @param integer $code             The exception error code.
45
-     */
46
-
47
-    public function __construct($requestedMethod, $requestedPath, $message = null, $code = 405)
48
-    {
49
-        $this->requestedMethod = $requestedMethod;
50
-        $this->requestedPath = $requestedPath;
51
-        parent::__construct($message, $code);
52
-    }
38
+	/**
39
+	 * Exception constructor.
40
+	 *
41
+	 * @param string  $requestedMethod  The request HTTP method.
42
+	 * @param string  $requestedPath    The request Path.
43
+	 * @param string  $message          The exception error message.
44
+	 * @param integer $code             The exception error code.
45
+	 */
46
+
47
+	public function __construct($requestedMethod, $requestedPath, $message = null, $code = 405)
48
+	{
49
+		$this->requestedMethod = $requestedMethod;
50
+		$this->requestedPath = $requestedPath;
51
+		parent::__construct($message, $code);
52
+	}
53 53
 	
54 54
 }
Please login to merge, or discard this patch.
src/Strategies/EnhancerAbstractStrategy.php 1 patch
Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -24,37 +24,37 @@
 block discarded – undo
24 24
 abstract class EnhancerAbstractStrategy implements StrategyInterface
25 25
 {
26 26
 
27
-    /**
28
-     * Key used to store the real route strategy on metadata.
29
-     *
30
-     * @var string
31
-     */
32
-
33
-    protected $metadataStrategyKey = "strategy";
34
-
35
-    /**
36
-     * @inheritdoc
37
-     * @throws BadRouteException
38
-     */
39
-
40
-    public function call(Route $route)
41
-    {
42
-        if ($route->hasMetadata($this->metadataStrategyKey)) {
43
-               $route->setStrategy($route->getMetadata($this->metadataStrategyKey));
44
-        } else $route->setStrategy(null);
45
-
46
-        $this->enhance($route);
47
-
48
-        return $route->call();
49
-    }
50
-
51
-    /**
52
-     * Manipulate route object before the dispatch.
53
-     *
54
-     * @param Route $route
55
-     * @return mixed
56
-     */
57
-
58
-    abstract public function enhance(Route $route);
27
+	/**
28
+	 * Key used to store the real route strategy on metadata.
29
+	 *
30
+	 * @var string
31
+	 */
32
+
33
+	protected $metadataStrategyKey = "strategy";
34
+
35
+	/**
36
+	 * @inheritdoc
37
+	 * @throws BadRouteException
38
+	 */
39
+
40
+	public function call(Route $route)
41
+	{
42
+		if ($route->hasMetadata($this->metadataStrategyKey)) {
43
+			   $route->setStrategy($route->getMetadata($this->metadataStrategyKey));
44
+		} else $route->setStrategy(null);
45
+
46
+		$this->enhance($route);
47
+
48
+		return $route->call();
49
+	}
50
+
51
+	/**
52
+	 * Manipulate route object before the dispatch.
53
+	 *
54
+	 * @param Route $route
55
+	 * @return mixed
56
+	 */
57
+
58
+	abstract public function enhance(Route $route);
59 59
 
60 60
 }
Please login to merge, or discard this patch.
src/Strategies/MatcherAwareInterface.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -20,16 +20,16 @@
 block discarded – undo
20 20
 interface MatcherAwareInterface
21 21
 {
22 22
 
23
-    /**
24
-     * @param \Codeburner\Router\Matcher $matcher
25
-     */
23
+	/**
24
+	 * @param \Codeburner\Router\Matcher $matcher
25
+	 */
26 26
 
27
-    public function setMatcher(\Codeburner\Router\Matcher $matcher);
27
+	public function setMatcher(\Codeburner\Router\Matcher $matcher);
28 28
 
29
-    /**
30
-     * @return \Codeburner\Router\Matcher
31
-     */
29
+	/**
30
+	 * @return \Codeburner\Router\Matcher
31
+	 */
32 32
 
33
-    public function getMatcher();
33
+	public function getMatcher();
34 34
 
35 35
 }
36 36
\ No newline at end of file
Please login to merge, or discard this patch.
src/Strategies/StrategyInterface.php 1 patch
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -19,13 +19,13 @@
 block discarded – undo
19 19
 interface StrategyInterface
20 20
 {
21 21
 
22
-    /**
23
-     * Dispatch the matched route action.
24
-     *
25
-     * @param \Codeburner\Router\Route $route
26
-     * @return mixed The response of request.
27
-     */
22
+	/**
23
+	 * Dispatch the matched route action.
24
+	 *
25
+	 * @param \Codeburner\Router\Route $route
26
+	 * @return mixed The response of request.
27
+	 */
28 28
 
29
-    public function call(\Codeburner\Router\Route $route);
29
+	public function call(\Codeburner\Router\Route $route);
30 30
 
31 31
 }
Please login to merge, or discard this patch.
src/Exceptions/BadRouteException.php 1 patch
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -20,9 +20,9 @@
 block discarded – undo
20 20
 class BadRouteException extends \Exception
21 21
 {
22 22
 
23
-    const OPTIONAL_SEGMENTS_ON_MIDDLE    = "Optional segments can only occur at the end of a route.";
24
-    const UNCLOSED_OPTIONAL_SEGMENTS     = "Number of opening [ and closing ] does not match.";
25
-    const EMPTY_OPTIONAL_PARTS           = "Empty optional part.";
26
-    const WRONG_CONTROLLER_CREATION_FUNC = "The controller creation function passed is not callable.";
23
+	const OPTIONAL_SEGMENTS_ON_MIDDLE    = "Optional segments can only occur at the end of a route.";
24
+	const UNCLOSED_OPTIONAL_SEGMENTS     = "Number of opening [ and closing ] does not match.";
25
+	const EMPTY_OPTIONAL_PARTS           = "Empty optional part.";
26
+	const WRONG_CONTROLLER_CREATION_FUNC = "The controller creation function passed is not callable.";
27 27
 
28 28
 }
Please login to merge, or discard this patch.
src/Exceptions/MethodNotAllowedException.php 1 patch
Indentation   +55 added lines, -55 removed lines patch added patch discarded remove patch
@@ -20,71 +20,71 @@
 block discarded – undo
20 20
 class MethodNotAllowedException extends BadRouteException
21 21
 {
22 22
 
23
-    /**
24
-     * The HTTP method from request.
25
-     *
26
-     * @var string
27
-     */
23
+	/**
24
+	 * The HTTP method from request.
25
+	 *
26
+	 * @var string
27
+	 */
28 28
 
29
-    public $requestedMethod;
29
+	public $requestedMethod;
30 30
 
31
-    /**
32
-     * The requested URi.
33
-     *
34
-     * @var string
35
-     */
31
+	/**
32
+	 * The requested URi.
33
+	 *
34
+	 * @var string
35
+	 */
36 36
 
37
-    public $requestedUri;
37
+	public $requestedUri;
38 38
 
39
-    /**
40
-     * All the allowed HTTP methods and routes for the request.
41
-     *
42
-     * @var array
43
-     */
39
+	/**
40
+	 * All the allowed HTTP methods and routes for the request.
41
+	 *
42
+	 * @var array
43
+	 */
44 44
 
45
-    public $allowedMethods;
45
+	public $allowedMethods;
46 46
 	
47
-    /**
48
-     * Exception constructor.
49
-     *
50
-     * @param string  $requestedMethod The request HTTP method.
51
-     * @param string  $requestedUri    The request URi.
52
-     * @param array   $allowedMethods  All the allowed HTTP methods and routes for the request.
53
-     * @param string  $message         The exception error message.
54
-     * @param integer $code            The exception error code.
55
-     */
47
+	/**
48
+	 * Exception constructor.
49
+	 *
50
+	 * @param string  $requestedMethod The request HTTP method.
51
+	 * @param string  $requestedUri    The request URi.
52
+	 * @param array   $allowedMethods  All the allowed HTTP methods and routes for the request.
53
+	 * @param string  $message         The exception error message.
54
+	 * @param integer $code            The exception error code.
55
+	 */
56 56
 
57
-    public function __construct($requestedMethod, $requestedUri, array $allowedMethods, $message = null, $code = 405)
58
-    {
59
-        $this->requestedMethod = $requestedMethod;
60
-        $this->requestedUri    = $requestedUri;
61
-        $this->allowedMethods  = $allowedMethods;
62
-        parent::__construct($message, $code);
63
-    }
57
+	public function __construct($requestedMethod, $requestedUri, array $allowedMethods, $message = null, $code = 405)
58
+	{
59
+		$this->requestedMethod = $requestedMethod;
60
+		$this->requestedUri    = $requestedUri;
61
+		$this->allowedMethods  = $allowedMethods;
62
+		parent::__construct($message, $code);
63
+	}
64 64
 
65
-    /**
66
-     * Verify if the given HTTP method is allowed for the request.
67
-     *
68
-     * @param string $method An HTTP method
69
-     * @return bool
70
-     */
65
+	/**
66
+	 * Verify if the given HTTP method is allowed for the request.
67
+	 *
68
+	 * @param string $method An HTTP method
69
+	 * @return bool
70
+	 */
71 71
 
72
-    public function can($method)
73
-    {
74
-        return in_array(strtolower($method), $this->allowedMethods);
75
-    }
72
+	public function can($method)
73
+	{
74
+		return in_array(strtolower($method), $this->allowedMethods);
75
+	}
76 76
 
77
-    /**
78
-     * The HTTP specification requires that a 405 Method Not Allowed response include the 
79
-     * Allow: header to detail available methods for the requested resource.
80
-     *
81
-     * @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html section 14.7
82
-     * @return string
83
-     */
77
+	/**
78
+	 * The HTTP specification requires that a 405 Method Not Allowed response include the 
79
+	 * Allow: header to detail available methods for the requested resource.
80
+	 *
81
+	 * @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html section 14.7
82
+	 * @return string
83
+	 */
84 84
     
85
-    public function allowed()
86
-    {
87
-        return implode(', ', $this->allowedMethods);
88
-    }
85
+	public function allowed()
86
+	{
87
+		return implode(', ', $this->allowedMethods);
88
+	}
89 89
 
90 90
 }
Please login to merge, or discard this patch.