BaseFillableElement   A
last analyzed

Complexity

Total Complexity 11

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 11
lcom 1
cbo 1
dl 0
loc 38
ccs 19
cts 19
cp 1
rs 10
c 0
b 0
f 0

7 Methods

Rating   Name   Duplication   Size   Complexity  
A getJSONObject() 0 8 3
A hasFillColor() 0 3 2
A getFillColor() 0 3 1
A setFillColor() 0 3 1
A hasFillOpacity() 0 3 2
A getFillOpacity() 0 3 1
A setFillOpacity() 0 3 1
1
<?php
2
3
declare( strict_types = 1 );
4
5
namespace Maps\LegacyModel;
6
7
/**
8
 * @since 2.0
9
 */
10
class BaseFillableElement extends BaseStrokableElement {
11
12
	protected $fillColor;
13
	protected $fillOpacity;
14
15 5
	public function getJSONObject( string $defText = '', string $defTitle = '' ): array {
16 5
		$parentArray = parent::getJSONObject( $defText, $defTitle );
17
		$array = [
18 5
			'fillColor' => $this->hasFillColor() ? $this->getFillColor() : '#FF0000',
19 5
			'fillOpacity' => $this->hasFillOpacity() ? $this->getFillOpacity() : '0.5',
20
		];
21 5
		return array_merge( $parentArray, $array );
22
	}
23
24 5
	public function hasFillColor() {
25 5
		return !is_null( $this->fillColor ) && $this->fillColor !== '';
26
	}
27
28 2
	public function getFillColor() {
29 2
		return $this->fillColor;
30
	}
31
32 2
	public function setFillColor( $fillColor ) {
33 2
		$this->fillColor = trim( $fillColor );
34 2
	}
35
36 5
	public function hasFillOpacity() {
37 5
		return !is_null( $this->fillOpacity ) && $this->fillOpacity !== '';
38
	}
39
40 2
	public function getFillOpacity() {
41 2
		return $this->fillOpacity;
42
	}
43
44 2
	public function setFillOpacity( $fillOpacity ) {
45 2
		$this->fillOpacity = trim( $fillOpacity );
46 2
	}
47
}
48