Passed
Branch master (d2b7b8)
by Henri
01:19
created

DefinitionsTrait::options()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 1
c 1
b 0
f 1
nc 1
nop 2
dl 0
loc 3
rs 10
1
<?php
2
3
namespace HnrAzevedo\Router;
4
5
trait DefinitionsTrait{
6
    private static $instance = null;
7
8
    public static function match(string $protocols, string $uri, $walking): Router
9
    {
10
        foreach(explode('|',$protocols) as $protocol){
11
            self::getInstance()->add($uri, $walking, $protocol);
12
        }
13
        return self::$instance;
14
    }
15
16
    public static function any(string $uri, $walking): Router
17
    {
18
        self::getInstance()->add($uri, $walking, 'get');
19
        self::getInstance()->add($uri, $walking, 'post');
20
        self::getInstance()->add($uri, $walking, 'form');
21
        return self::getInstance()->add($uri, $walking, 'ajax');
22
    }
23
24
    public static function get(string $uri, $walking): Router
25
    {
26
        return self::getInstance()->add($uri, $walking, 'get');
27
    }
28
29
    public static function post(string $uri, $walking): Router
30
    {
31
        return self::getInstance()->add($uri, $walking, 'post');
32
    }
33
34
    public static function ajax(string $uri, $walking): Router
35
    {
36
        return self::getInstance()->add($uri, $walking, 'ajax');
37
    }
38
39
    public static function put(string $uri, $walking): Router
40
    {
41
        return self::getInstance()->add($uri, $walking, 'put');
42
    }
43
44
    public static function patch(string $uri, $walking): Router
45
    {
46
        return self::getInstance()->add($uri, $walking, 'patch');
47
    }
48
49
    public static function head(string $uri, $walking): Router
50
    {
51
        return self::getInstance()->add($uri, $walking, 'head');
52
    }
53
54
    public static function trace(string $uri, $walking): Router
55
    {
56
        return self::getInstance()->add($uri, $walking, 'trace');
57
    }
58
59
    public static function options(string $uri, $walking): Router
60
    {
61
        return self::getInstance()->add($uri, $walking, 'options');
62
    }
63
64
    public static function connect(string $uri, $walking): Router
65
    {
66
        return self::getInstance()->add($uri, $walking, 'connect');
67
    }
68
69
    public static function delete(string $uri, $walking): Router
70
    {
71
        return self::getInstance()->add($uri, $walking, 'delete');
72
    }
73
74
    public static function form(string $uri, $walking): Router
75
    {
76
        return self::getInstance()->add($uri, $walking, 'form');
77
    }
78
79
    public static function add(string $uri, $walking, string $protocol): Router
80
    {
81
        return self::getInstance()->set($uri, $walking, $protocol);
82
    }
83
84
}
85