Passed
Push — master ( cb35bf...01d583 )
by Marius
35s
created

LegacyAdapterItemLookup::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 3
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
namespace Wikibase\DataModel\Services\Lookup;
4
5
use Wikibase\DataModel\Entity\Item;
6
use Wikibase\DataModel\Entity\ItemId;
7
8
/**
9
 * ItemLookup implementation providing a migration path away from
10
 * the EntityLookup interface.
11
 *
12
 * @license GPL-2.0-or-later
13
 * @author Jeroen De Dauw < [email protected] >
14
 */
15
class LegacyAdapterItemLookup implements ItemLookup {
16
17
	private $lookup;
18
19
	public function __construct( EntityLookup $lookup ) {
20
		$this->lookup = $lookup;
21
	}
22
23
	/**
24
	 * @param ItemId $itemId
25
	 *
26
	 * @return Item|null
27
	 * @throws ItemLookupException
28
	 */
29
	public function getItemForId( ItemId $itemId ) {
30
		try {
31
			return $this->lookup->getEntity( $itemId );
32
		} catch ( EntityLookupException $ex ) {
33
			throw new ItemLookupException( $itemId, $ex->getMessage(), $ex );
34
		}
35
	}
36
37
}
38