StorageUsage   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 62
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 3
Bugs 0 Features 0
Metric Value
wmc 5
c 3
b 0
f 0
lcom 0
cbo 0
dl 0
loc 62
rs 10

5 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 6 1
A getDate() 0 4 1
A getUsage() 0 4 1
A getUsername() 0 4 1
A fromRow() 0 4 1
1
<?php
2
/**
3
 * Copyright (c) 2014 - Arno van Rossum <[email protected]>
4
 *
5
 * Permission is hereby granted, free of charge, to any person obtaining a copy
6
 * of this software and associated documentation files (the "Software"), to deal
7
 * in the Software without restriction, including without limitation the rights
8
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
 * copies of the Software, and to permit persons to whom the Software is
10
 * furnished to do so, subject to the following conditions:
11
 *
12
 * The above copyright notice and this permission notice shall be included in
13
 * all copies or substantial portions of the Software.
14
 *
15
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
 * THE SOFTWARE.
22
 */
23
24
namespace OCA\ocUsageCharts\Entity\Storage;
25
26
/**
27
 * @author Arno van Rossum <[email protected]>
28
 */
29
class StorageUsage
30
{
31
    /**
32
     * @var \DateTime
33
     */
34
    private $date;
35
36
    /**
37
     * @var integer Kilobytes
38
     */
39
    private $usage;
40
41
    /**
42
     * @var string
43
     */
44
    private $username;
45
46
    /**
47
     * @param \DateTime $date
48
     * @param integer $usage
49
     * @param string $username
50
     */
51
    public function __construct(\DateTime $date, $usage, $username)
52
    {
53
        $this->date = $date;
54
        $this->usage = $usage;
55
        $this->username = $username;
56
    }
57
58
    /**
59
     * @return \DateTime
60
     */
61
    public function getDate()
62
    {
63
        return $this->date;
64
    }
65
66
    /**
67
     * @return integer
68
     */
69
    public function getUsage()
70
    {
71
        return $this->usage;
72
    }
73
74
    /**
75
     * @return string
76
     */
77
    public function getUsername()
78
    {
79
        return $this->username;
80
    }
81
82
    /**
83
     * @param array $row
84
     * @return StorageUsage
85
     */
86
    public static function fromRow($row)
87
    {
88
        return new StorageUsage(new \Datetime($row['created']), $row['usage'], $row['username']);
89
    }
90
}