Completed
Pull Request — master (#88)
by
unknown
08:32
created

V06   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Test Coverage

Coverage 83.33%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 37
ccs 10
cts 12
cp 0.8333
rs 10
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A getXmlNs() 0 3 1
A getName() 0 3 1
A getDecoder() 0 8 1
A getMsgId() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Genkgo\Camt\Camt052\MessageFormat;
6
7
use Genkgo\Camt\Camt052;
8
use Genkgo\Camt\Decoder;
9
use Genkgo\Camt\DecoderInterface;
10
use Genkgo\Camt\MessageFormatInterface;
11
12
/**
13
 * Class MessageFormat
14
 * @package Genkgo\Camt\Camt052
15
 */
16
final class V06 implements MessageFormatInterface
17
{
18
    /**
19
     * @return string
20
     */
21 2
    public function getXmlNs(): string
22
    {
23 2
        return 'urn:iso:std:iso:20022:tech:xsd:camt.052.001.06';
24
    }
25
26
    /**
27
     * @return string
28
     */
29 1
    public function getMsgId(): string
30
    {
31 1
        return 'camt.052.001.06';
32
    }
33
34
    /**
35
     * @return string
36
     */
37
    public function getName(): string
38
    {
39
        return 'BankToCustomerAccountReportV06';
40
    }
41
42
    /**
43
     * @return DecoderInterface
44
     */
45 1
    public function getDecoder(): DecoderInterface
46
    {
47 1
        $entryTransactionDetailDecoder = new Camt052\Decoder\EntryTransactionDetail(new Decoder\Date());
48 1
        $entryDecoder                  = new Decoder\Entry($entryTransactionDetailDecoder);
49 1
        $recordDecoder                 = new Decoder\Record($entryDecoder, new Decoder\Date());
50 1
        $messageDecoder                = new Camt052\Decoder\V06\Message($recordDecoder, new Decoder\Date());
51
52 1
        return new Decoder($messageDecoder, sprintf('/assets/%s.xsd', $this->getMsgId()));
53
    }
54
}
55