Seditio Source
Root |
./othercms/phpBB3/vendor/symfony/routing/Annotation/Route.php
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Symfony\Component\Routing\Annotation;

/**
 * Annotation class for @Route().
 *
 * @Annotation
 * @Target({"CLASS", "METHOD"})
 *
 * @author Fabien Potencier <fabien@symfony.com>
 */
class Route
{
    private
$path;
    private
$name;
    private
$requirements = [];
    private
$options = [];
    private
$defaults = [];
    private
$host;
    private
$methods = [];
    private
$schemes = [];
    private
$condition;

   
/**
     * @param array $data An array of key/value parameters
     *
     * @throws \BadMethodCallException
     */
   
public function __construct(array $data)
    {
        if (isset(
$data['value'])) {
           
$data['path'] = $data['value'];
            unset(
$data['value']);
        }

        foreach (
$data as $key => $value) {
           
$method = 'set'.str_replace('_', '', $key);
            if (!
method_exists($this, $method)) {
                throw new \
BadMethodCallException(sprintf('Unknown property "%s" on annotation "%s".', $key, static::class));
            }
           
$this->$method($value);
        }
    }

    public function
setPath($path)
    {
       
$this->path = $path;
    }

    public function
getPath()
    {
        return
$this->path;
    }

    public function
setHost($pattern)
    {
       
$this->host = $pattern;
    }

    public function
getHost()
    {
        return
$this->host;
    }

    public function
setName($name)
    {
       
$this->name = $name;
    }

    public function
getName()
    {
        return
$this->name;
    }

    public function
setRequirements($requirements)
    {
       
$this->requirements = $requirements;
    }

    public function
getRequirements()
    {
        return
$this->requirements;
    }

    public function
setOptions($options)
    {
       
$this->options = $options;
    }

    public function
getOptions()
    {
        return
$this->options;
    }

    public function
setDefaults($defaults)
    {
       
$this->defaults = $defaults;
    }

    public function
getDefaults()
    {
        return
$this->defaults;
    }

    public function
setSchemes($schemes)
    {
       
$this->schemes = \is_array($schemes) ? $schemes : [$schemes];
    }

    public function
getSchemes()
    {
        return
$this->schemes;
    }

    public function
setMethods($methods)
    {
       
$this->methods = \is_array($methods) ? $methods : [$methods];
    }

    public function
getMethods()
    {
        return
$this->methods;
    }

    public function
setCondition($condition)
    {
       
$this->condition = $condition;
    }

    public function
getCondition()
    {
        return
$this->condition;
    }
}