FeatureDetection   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 7
dl 0
loc 40
ccs 6
cts 6
cp 1
rs 10
c 1
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A isConnectionResolver() 0 3 1
A connectionResolverDriver() 0 7 2
1
<?php
2
3
namespace ShiftOneLabs\LaravelNomad;
4
5
use Illuminate\Database\Connection;
6
7
class FeatureDetection
8
{
9
    /**
10
     * Resolve the connection via bindings.
11
     *
12
     * @var string
13
     */
14
    const CONNECTION_RESOLVER_BINDINGS = 'bindings';
15
16
    /**
17
     * Resolve the connection via the connection resolver method.
18
     *
19
     * @var string
20
     */
21
    const CONNECTION_RESOLVER_METHOD = 'connection-method';
22
23
    /**
24
     * Determine the driver for resolving the connection.
25
     *
26
     * @return string
27
     */
28 2747
    public function connectionResolverDriver()
29
    {
30 2747
        if (method_exists(Connection::class, 'resolverFor')) {
31 1066
            return self::CONNECTION_RESOLVER_METHOD;
32
        }
33
34 1681
        return self::CONNECTION_RESOLVER_BINDINGS;
35
    }
36
37
    /**
38
     * Check if the connection resolver method is of the given type.
39
     *
40
     * @param  string  $driver
41
     *
42
     * @return bool
43
     */
44 2278
    public function isConnectionResolver($driver)
45
    {
46 2278
        return $this->connectionResolverDriver() == $driver;
47
    }
48
}
49