annotate vendor/symfony/routing/Loader/Configurator/Traits/RouteTrait.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@14 1 <?php
Chris@14 2
Chris@14 3 /*
Chris@14 4 * This file is part of the Symfony package.
Chris@14 5 *
Chris@14 6 * (c) Fabien Potencier <fabien@symfony.com>
Chris@14 7 *
Chris@14 8 * For the full copyright and license information, please view the LICENSE
Chris@14 9 * file that was distributed with this source code.
Chris@14 10 */
Chris@14 11
Chris@14 12 namespace Symfony\Component\Routing\Loader\Configurator\Traits;
Chris@14 13
Chris@14 14 use Symfony\Component\Routing\Route;
Chris@14 15 use Symfony\Component\Routing\RouteCollection;
Chris@14 16
Chris@14 17 trait RouteTrait
Chris@14 18 {
Chris@14 19 /**
Chris@14 20 * @var RouteCollection|Route
Chris@14 21 */
Chris@14 22 private $route;
Chris@14 23
Chris@14 24 /**
Chris@14 25 * Adds defaults.
Chris@14 26 *
Chris@14 27 * @return $this
Chris@14 28 */
Chris@14 29 final public function defaults(array $defaults)
Chris@14 30 {
Chris@14 31 $this->route->addDefaults($defaults);
Chris@14 32
Chris@14 33 return $this;
Chris@14 34 }
Chris@14 35
Chris@14 36 /**
Chris@14 37 * Adds requirements.
Chris@14 38 *
Chris@14 39 * @return $this
Chris@14 40 */
Chris@14 41 final public function requirements(array $requirements)
Chris@14 42 {
Chris@14 43 $this->route->addRequirements($requirements);
Chris@14 44
Chris@14 45 return $this;
Chris@14 46 }
Chris@14 47
Chris@14 48 /**
Chris@14 49 * Adds options.
Chris@14 50 *
Chris@14 51 * @return $this
Chris@14 52 */
Chris@14 53 final public function options(array $options)
Chris@14 54 {
Chris@14 55 $this->route->addOptions($options);
Chris@14 56
Chris@14 57 return $this;
Chris@14 58 }
Chris@14 59
Chris@14 60 /**
Chris@14 61 * Sets the condition.
Chris@14 62 *
Chris@14 63 * @param string $condition
Chris@14 64 *
Chris@14 65 * @return $this
Chris@14 66 */
Chris@14 67 final public function condition($condition)
Chris@14 68 {
Chris@14 69 $this->route->setCondition($condition);
Chris@14 70
Chris@14 71 return $this;
Chris@14 72 }
Chris@14 73
Chris@14 74 /**
Chris@14 75 * Sets the pattern for the host.
Chris@14 76 *
Chris@14 77 * @param string $pattern
Chris@14 78 *
Chris@14 79 * @return $this
Chris@14 80 */
Chris@14 81 final public function host($pattern)
Chris@14 82 {
Chris@14 83 $this->route->setHost($pattern);
Chris@14 84
Chris@14 85 return $this;
Chris@14 86 }
Chris@14 87
Chris@14 88 /**
Chris@14 89 * Sets the schemes (e.g. 'https') this route is restricted to.
Chris@14 90 * So an empty array means that any scheme is allowed.
Chris@14 91 *
Chris@14 92 * @param string[] $schemes
Chris@14 93 *
Chris@14 94 * @return $this
Chris@14 95 */
Chris@14 96 final public function schemes(array $schemes)
Chris@14 97 {
Chris@14 98 $this->route->setSchemes($schemes);
Chris@14 99
Chris@14 100 return $this;
Chris@14 101 }
Chris@14 102
Chris@14 103 /**
Chris@14 104 * Sets the HTTP methods (e.g. 'POST') this route is restricted to.
Chris@14 105 * So an empty array means that any method is allowed.
Chris@14 106 *
Chris@14 107 * @param string[] $methods
Chris@14 108 *
Chris@14 109 * @return $this
Chris@14 110 */
Chris@14 111 final public function methods(array $methods)
Chris@14 112 {
Chris@14 113 $this->route->setMethods($methods);
Chris@14 114
Chris@14 115 return $this;
Chris@14 116 }
Chris@14 117
Chris@14 118 /**
Chris@14 119 * Adds the "_controller" entry to defaults.
Chris@14 120 *
Chris@14 121 * @param callable|string $controller a callable or parseable pseudo-callable
Chris@14 122 *
Chris@14 123 * @return $this
Chris@14 124 */
Chris@14 125 final public function controller($controller)
Chris@14 126 {
Chris@17 127 $this->route->addDefaults(['_controller' => $controller]);
Chris@14 128
Chris@14 129 return $this;
Chris@14 130 }
Chris@14 131 }