Completed
Pull Request — 2.10.x (#3994)
by Grégoire
11:52
created

DB2Driver   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Test Coverage

Coverage 41.18%

Importance

Changes 0
Metric Value
wmc 6
eloc 16
dl 0
loc 38
ccs 7
cts 17
cp 0.4118
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A connect() 0 23 5
A getName() 0 3 1
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 22
    public function connect(array $params, $username = null, $password = null, array $driverOptions = [])
16
    {
17 22
        if (! isset($params['protocol'])) {
18 22
            $params['protocol'] = 'TCPIP';
19
        }
20
21 22
        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 22
        return new DB2Connection($params, (string) $username, (string) $password, $driverOptions);
38
    }
39
40
    /**
41
     * {@inheritdoc}
42
     *
43
     * @deprecated
44
     */
45 46
    public function getName()
46
    {
47 46
        return 'ibm_db2';
48
    }
49
}
50