ResolverMapping::map()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 1

Importance

Changes 2
Bugs 1 Features 1
Metric Value
c 2
b 1
f 1
dl 0
loc 7
ccs 5
cts 5
cp 1
rs 9.4285
cc 1
eloc 4
nc 1
nop 2
crap 1
1
<?php
2
3
namespace Cascade\Mapper\Mapping;
4
5
use Cascade\Mapper\Field\Reference\ReferenceInterface;
6
use Cascade\Mapper\Value\Resolver\ValueResolverInterface;
7
8
class ResolverMapping implements MappingInterface
9
{
10
    /**
11
     * @var ReferenceInterface
12
     */
13
    private $destinationReference;
14
15
    /**
16
     * @var ValueResolverInterface
17
     */
18
    private $valueResolver;
19
20
    /**
21
     * @param ReferenceInterface $destinationReference
22
     * @param ValueResolverInterface $valueResolver
23
     */
24 3
    public function __construct(ReferenceInterface $destinationReference, ValueResolverInterface $valueResolver)
25
    {
26 3
        $this->destinationReference = $destinationReference;
27 3
        $this->valueResolver = $valueResolver;
28 3
    }
29
30 1
    public function map($destination, $source)
31
    {
32 1
        return $this->destinationReference->setValue(
33 1
            $destination,
34 1
            $this->valueResolver->resolve($source, $destination)
35 1
        );
36
    }
37
}
38