Passed
Push — master ( afac5a...068199 )
by 世昌
02:20
created

DataAccess::application()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
namespace suda\application\database;
3
4
use ReflectionException;
5
use suda\application\Application;
6
use suda\orm\middleware\Middleware;
7
8
/**
9
 * 数据表抽象对象
10
 *
11
 * 用于提供对数据表的操作
12
 *
13
 */
14
class DataAccess extends \suda\orm\DataAccess
15
{
16
17
18
    /**
19
     * 创建对数据的操作
20
     *
21
     * @param string $object
22
     * @param Middleware|null $middleware
23
     * @throws ReflectionException
24
     */
25
    public function __construct(string $object, ?Middleware $middleware = null)
26
    {
27
        parent::__construct($object, Database::application()->getDataSource(), $middleware);
28
    }
29
30
    /**
31
     * 从变量创建中间件
32
     *
33
     * @param object $object
34
     * @return DataAccess
35
     * @throws ReflectionException
36
     */
37
    public static function create($object):DataAccess
38
    {
39
        $middleware = null;
40
        if ($object instanceof Middleware) {
41
            $middleware = $object;
42
        }
43
        return new self(get_class($object), $middleware);
44
    }
45
46
    /**
47
     * 创建访问工具
48
     *
49
     * @param string $object
50
     * @param Middleware|null $middleware
51
     * @return DataAccess
52
     * @throws ReflectionException
53
     */
54
    public static function new(string $object, ?Middleware $middleware = null):DataAccess
55
    {
56
        return new self($object, $middleware);
57
    }
58
}
59