Conditions | 4 |
Paths | 5 |
Total Lines | 20 |
Lines | 0 |
Ratio | 0 % |
Tests | 10 |
CRAP Score | 4 |
Changes | 0 |
1 | <?php |
||
14 | 32 | public function decorate(&$conditions, SearchCriteria $criteria) |
|
15 | { |
||
16 | 32 | $fields = array_keys($criteria->getSelect()); |
|
17 | 32 | if (empty($fields)) |
|
18 | { |
||
19 | 29 | return; |
|
20 | } |
||
21 | // Ensure _class field as it is required by SearchFinder |
||
22 | 3 | if(!in_array('_class', $fields, true)) |
|
23 | { |
||
24 | 3 | $fields[] = '_class'; |
|
25 | } |
||
26 | 3 | $c = $criteria->getConditions(); |
|
27 | // Empty conditions results in match_all, which fails when there is a _source too |
||
28 | // Exception request does not support [_source] |
||
29 | 3 | if(!empty($c)) |
|
30 | { |
||
31 | 1 | $conditions['_source'] = $fields; |
|
32 | } |
||
33 | } |
||
34 | } |