Вход Регистрация
Файл: forsoc.ru/vendor/symfony/routing/Symfony/Component/Routing/Annotation/Route.php
Строк: 123
<?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 SymfonyComponentRoutingAnnotation;

/**
 * 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;

    
/**
     * Constructor.
     *
     * @param array $data An array of key/value parameters.
     *
     * @throws BadMethodCallException
     */
    
public function __construct(array $data)
    {
        
$this->requirements = array();
        
$this->options = array();
        
$this->defaults = array();
        
$this->methods = array();
        
$this->schemes = array();

        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".'$keyget_class($this)));
            }
            
$this->$method($value);
        }
    }

    
/**
     * @deprecated Deprecated in 2.2, to be removed in 3.0. Use setPath instead.
     */
    
public function setPattern($pattern)
    {
        
$this->path $pattern;
    }

    
/**
     * @deprecated Deprecated in 2.2, to be removed in 3.0. Use getPath instead.
     */
    
public function getPattern()
    {
        return 
$this->path;
    }

    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 : array($schemes);
    }

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

    public function 
setMethods($methods)
    {
        
$this->methods is_array($methods) ? $methods : array($methods);
    }

    public function 
getMethods()
    {
        return 
$this->methods;
    }
}
Онлайн: 0
Реклама