Completed
Push — master ( f92c24...681df7 )
by Adam
02:52
created

Delete::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 6
ccs 5
cts 5
cp 1
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 4
nc 1
nop 2
crap 1
1
<?php
2
3
namespace BestServedCold\LaravelZendSearch\Lucene\Store;
4
5
use BestServedCold\LaravelZendSearch\Lucene\Index;
6
use BestServedCold\LaravelZendSearch\Lucene\Search;
7
8
/**
9
 * Class Delete
10
 *
11
 * @package BestServedCold\LaravelZendSearch\Lucene\Store
12
 */
13
class Delete
14
{
15
    /**
16
     * @var Search
17
     */
18
    private $search;
19
20
    /**
21
     * @var
22
     */
23
    private $index;
24
25
    /**
26
     * Delete constructor.
27
     *
28
     * @param Search $search
29
     * @param Index  $index
30
     */
31 4
    public function __construct(Search $search, Index $index)
32
    {
33 4
        $this->search = $search;
34 4
        $this->search->path(config('search.index.path'));
35 4
        $this->index  = $index;
36 4
    }
37
38
    /**
39
     * Delete
40
     *
41
     * @param  $id
42
     * @param  bool $uid
43
     * @return $this
44
     */
45 1
    public function delete($id, $uid = false)
46
    {
47 1
        $this->search->where($id, 'xref_id');
48
49 1
        if ($uid) {
50 1
            $this->search->where($uid, 'uid');
51 1
        }
52
53 1
        foreach ($this->search->hits() as $hit) {
54 1
            $this->index->get()->delete($hit);
55 1
        }
56
57 1
        return $this;
58
    }
59
}
60