Failed Conditions
Pull Request — master (#3319)
by Massimiliano
11:33
created

DB2Driver   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Test Coverage

Coverage 11.76%

Importance

Changes 0
Metric Value
wmc 6
eloc 16
dl 0
loc 36
ccs 2
cts 17
cp 0.1176
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getName() 0 3 1
A connect() 0 23 5
1
<?php
2
3
namespace Doctrine\DBAL\Driver\IBMDB2;
4
5
use Doctrine\DBAL\Driver\AbstractDB2Driver;
6
7
/**
8
 * IBM DB2 Driver.
9
 */
10
class DB2Driver extends AbstractDB2Driver
11
{
12
    /**
13
     * {@inheritdoc}
14
     */
15
    public function connect(array $params, $username = null, $password = null, array $driverOptions = [])
16
    {
17
        if (! isset($params['protocol'])) {
18
            $params['protocol'] = 'TCPIP';
19
        }
20
21
        if ($params['host'] !== 'localhost' && $params['host'] !== '127.0.0.1') {
22
            // if the host isn't localhost, use extended connection params
23
            $params['dbname'] = 'DRIVER={IBM DB2 ODBC DRIVER}' .
24
                     ';DATABASE=' . $params['dbname'] .
25
                     ';HOSTNAME=' . $params['host'] .
26
                     ';PROTOCOL=' . $params['protocol'] .
27
                     ';UID=' . $username .
28
                     ';PWD=' . $password . ';';
29
            if (isset($params['port'])) {
30
                $params['dbname'] .= 'PORT=' . $params['port'];
31
            }
32
33
            $username = null;
34
            $password = null;
35
        }
36
37
        return new DB2Connection($params, $username, $password, $driverOptions);
38
    }
39
40
    /**
41
     * {@inheritdoc}
42
     */
43 21
    public function getName()
44
    {
45 21
        return 'ibm_db2';
46
    }
47
}
48