Completed
Push — master ( 00d376...cc54a0 )
by Veaceslav
01:15
created

RequestBodyBuilder   A

Complexity

Total Complexity 8

Size/Duplication

Total Lines 61
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 8
lcom 1
cbo 3
dl 0
loc 61
ccs 23
cts 23
cp 1
rs 10
c 0
b 0
f 0

8 Methods

Rating   Name   Duplication   Size   Complexity  
A createRequestBody() 0 9 1
A createRequestBodyAggregate() 0 4 1
A setContent() 0 6 1
A setDescription() 0 6 1
A setRequired() 0 6 1
A getContent() 0 4 1
A getDescription() 0 4 1
A isRequired() 0 4 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Aweapi\Openapi\Builders;
6
7
use Aweapi\Openapi\Objects;
8
9
final class RequestBodyBuilder implements Objects\RequestBodyFactory
10
{
11
    use Properties\OptionalExtensions;
12
13
    private $content;
14
15
    private $description;
16
17
    private $required = false;
18
19 5
    public function createRequestBody(): Objects\RequestBody
20
    {
21 5
        return new Objects\RequestBody(
22 5
            $this->getContent()->createMediaTypes(),
23 5
            $this->getDescription(),
24 5
            $this->isRequired(),
25 5
            $this->getExtensions()
26
        );
27
    }
28
29 3
    public function createRequestBodyAggregate(): Objects\RequestBodyAggregate
30
    {
31 3
        return $this->createRequestBody();
32
    }
33
34 5
    public function setContent(Objects\MediaTypesFactory $content): self
35
    {
36 5
        $this->content = $content;
37
38 5
        return $this;
39
    }
40
41 1
    public function setDescription(string $description): self
42
    {
43 1
        $this->description = $description;
44
45 1
        return $this;
46
    }
47
48 1
    public function setRequired(bool $required): self
49
    {
50 1
        $this->required = $required;
51
52 1
        return $this;
53
    }
54
55 5
    private function getContent(): Objects\MediaTypesFactory
56
    {
57 5
        return $this->content;
58
    }
59
60 5
    private function getDescription(): ?string
61
    {
62 5
        return $this->description;
63
    }
64
65 5
    private function isRequired(): bool
66
    {
67 5
        return $this->required;
68
    }
69
}
70