Passed
Push — main ( 6cee10...25dcc1 )
by Jean-Christophe
02:23
created

AbstractAclPart   A

Complexity

Total Complexity 11

Size/Duplication

Total Lines 72
Duplicated Lines 0 %

Test Coverage

Coverage 84.62%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 15
dl 0
loc 72
ccs 22
cts 26
cp 0.8462
rs 10
c 2
b 0
f 0
wmc 11

10 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 2 1
A getName() 0 2 1
A toArray() 0 2 1
A setName() 0 2 1
A fromArray() 0 5 2
A __toString() 0 2 1
A setId() 0 2 1
A getId_() 0 2 1
A getId() 0 2 1
A castAs() 0 2 1
1
<?php
2
namespace Ubiquity\security\acl\models;
3
4
/**
5
 * Ubiquity\security\acl\models$AbastractAclElement
6
 * This class is part of Ubiquity
7
 *
8
 * @author jc
9
 * @version 1.0.0
10
 *
11
 */
12
abstract class AbstractAclPart {
13
14
	/**
15
	 *
16
	 * @id
17
	 * @column("name"=>"id","nullable"=>false,"dbType"=>"int(11)")
18
	 */
19
	protected $id;
20
21
	/**
22
	 *
23
	 * @var string
24
	 */
25
	protected $name;
26
27 22
	public function __construct(?string $name = null) {
28 22
		$this->name = $name;
29 22
	}
30
31
	/**
32
	 *
33
	 * @return mixed
34
	 */
35 22
	public function getName() {
36 22
		return $this->name;
37
	}
38
39
	/**
40
	 *
41
	 * @param string $name
42
	 */
43 4
	public function setName($name) {
44 4
		$this->name = $name;
45 4
	}
46
47 5
	public function toArray(): array {
48 5
		return \get_object_vars($this);
49
	}
50
51 6
	public function fromArray(array $values) {
52 6
		foreach ($values as $k => $v) {
53 6
			$this->$k = $v;
54
		}
55 6
		$this->_fromArray = true;
56 6
	}
57
58
	/**
59
	 *
60
	 * @return mixed
61
	 */
62 3
	public function getId() {
63 3
		return $this->id;
64
	}
65
66
	public function getId_() {
67
		return $this->name;
68
	}
69
70
	/**
71
	 *
72
	 * @param mixed $id
73
	 */
74 4
	public function setId($id) {
75 4
		$this->id = $id;
76 4
	}
77
78
	public function __toString() {
79
		return $this->name;
80
	}
81
82 3
	public function castAs(string $class) {
83 3
		return unserialize(sprintf('O:%d:"%s"%s', \strlen($class), $class, \strstr(\strstr(\serialize($this), '"'), ':')));
84
	}
85
}
86
87