Completed
Push — master ( ed61e9...497a60 )
by Rougin
04:46
created

DatabaseTrait   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 69
Duplicated Lines 0 %

Coupling/Cohesion

Components 2
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
lcom 2
cbo 1
dl 0
loc 69
ccs 11
cts 11
cp 1
rs 10
c 0
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A setDatabase() 0 4 1
A database() 0 8 1
A setQuery() 0 4 1
A query() 0 6 1
1
<?php
2
3
namespace Rougin\Wildfire\Traits;
4
5
use Rougin\Wildfire\Helpers\DescribeHelper;
6
7
/**
8
 * Database Trait
9
 *
10
 * @package Wildfire
11
 * @author  Rougin Royce Gutib <[email protected]>
12
 */
13
trait DatabaseTrait
14
{
15
    /**
16
     * @var \CI_DB_query_builder|null
17
     */
18
    protected $db;
19
20
    /**
21
     * @var \Rougin\Describe\Describe
22
     */
23
    protected $describe;
24
25
    /**
26
     * @var \CI_DB_result
27
     */
28
    protected $query;
29
30
    /**
31
     * Sets the database class.
32
     * NOTE: To be removed in v1.0.0. Use $this->database instead.
33
     *
34
     * @param  \CI_DB_query_builder $database
35
     * @return self
36
     */
37 3
    public function setDatabase($database)
38
    {
39 3
        return $this->database($database);
40
    }
41
42
    /**
43
     * Sets the database instance.
44
     *
45
     * @param  \CI_DB_query_builder $database
46
     * @return self
47
     */
48 27
    public function database($database)
49
    {
50 27
        $this->db = $database;
51
52 27
        $this->describe = DescribeHelper::make($database);
53
54 27
        return $this;
55
    }
56
57
    /**
58
     * Sets the query result.
59
     * NOTE: To be removed in v1.0.0. Use $this->query instead.
60
     *
61
     * @param  \CI_DB_result $query
62
     * @return self
63
     */
64 3
    public function setQuery($query)
65
    {
66 3
        return $this->query($query);
67
    }
68
69
    /**
70
     * Sets the query result instance.
71
     *
72
     * @param  \CI_DB_result $query
73
     * @return self
74
     */
75 3
    public function query($query)
76
    {
77 3
        $this->query = $query;
78
79 3
        return $this;
80
    }
81
}
82