Completed
Pull Request — master (#6)
by Guilh
02:50
created

Header::merge()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 7
CRAP Score 1

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 9
ccs 7
cts 7
cp 1
rs 9.6666
cc 1
eloc 6
nc 1
nop 2
crap 1
1
<?php
2
namespace gossi\swagger;
3
4
use gossi\swagger\parts\DescriptionPart;
5
use gossi\swagger\parts\ExtensionPart;
6
use gossi\swagger\parts\ItemsPart;
7
use gossi\swagger\parts\TypePart;
8
use phootwork\collection\CollectionUtils;
9
use phootwork\collection\Map;
10
use phootwork\lang\Arrayable;
11
12
class Header extends AbstractModel implements Arrayable {
13
14
	use DescriptionPart;
15
	use TypePart;
16
	use ItemsPart;
17
	use ExtensionPart;
18
19
	/** @var string */
20
	private $header;
21
22 1
	public function __construct($header, $contents = []) {
23 1
		$this->header = $header;
24 1
		$this->merge($contents);
25 1
	}
26
27 1
	public function merge($contents, $strategy = self::PREFER_ORIGINAL) {
0 ignored issues
show
Unused Code introduced by
The parameter $strategy is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
28 1
		$data = CollectionUtils::toMap($contents);
29
30
		// parts
31 1
		$this->parseDescription($data);
32 1
		$this->parseType($data);
33 1
		$this->parseItems($data);
34 1
		$this->parseExtensions($data);
35 1
	}
36
37 1
	public function toArray() {
38 1
		return $this->export('description', $this->getTypeExportFields(), 'items');
39
	}
40
41
	/**
42
	 * Returns the header
43
	 *
44
	 * @return string
45
	 */
46 1
	public function getHeader() {
47 1
		return $this->header;
48
	}
49
50
}
51