Passed
Push — master ( ddbf8b...086098 )
by Robbie
11:17
created

CallbackFlushDiscoverer   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 4
dl 0
loc 22
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A shouldFlush() 0 3 1
1
<?php
2
3
namespace SilverStripe\Core\Startup;
4
5
/**
6
 * Handle a callable object as a discoverer
7
 */
8
class CallbackFlushDiscoverer implements FlushDiscoverer
9
{
10
    /**
11
     * Callback incapsulating the discovery logic
12
     *
13
     * @var Callable
14
     */
15
    protected $callback;
16
17
    /**
18
     * Construct the discoverer from a callback
19
     *
20
     * @param Callable $callback returning FlushDiscoverer response or a timestamp
21
     */
22
    public function __construct(callable $callback)
23
    {
24
        $this->callback = $callback;
25
    }
26
27
    public function shouldFlush()
28
    {
29
        return call_user_func($this->callback);
30
    }
31
}
32