Failed Conditions
Pull Request — develop (#3553)
by Sergei
100:55 queued 35:51
created

DB2Driver::getName()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 3
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
eloc 1
nc 1
nop 0
crap 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Doctrine\DBAL\Driver\IBMDB2;
6
7
use Doctrine\DBAL\Driver\AbstractDB2Driver;
8
9
/**
10
 * IBM DB2 Driver.
11
 */
12
class DB2Driver extends AbstractDB2Driver
13
{
14
    /**
15
     * {@inheritdoc}
16
     */
17
    public function connect(array $params, $username = null, $password = null, array $driverOptions = [])
18
    {
19
        if (! isset($params['protocol'])) {
20
            $params['protocol'] = 'TCPIP';
21
        }
22
23
        if ($params['host'] !== 'localhost' && $params['host'] !== '127.0.0.1') {
24
            // if the host isn't localhost, use extended connection params
25
            $params['dbname'] = 'DRIVER={IBM DB2 ODBC DRIVER}' .
26
                     ';DATABASE=' . $params['dbname'] .
27
                     ';HOSTNAME=' . $params['host'] .
28
                     ';PROTOCOL=' . $params['protocol'] .
29
                     ';UID=' . $username .
30
                     ';PWD=' . $password . ';';
31
            if (isset($params['port'])) {
32
                $params['dbname'] .= 'PORT=' . $params['port'];
33
            }
34
35
            $username = null;
36
            $password = null;
37
        }
38
39
        return new DB2Connection($params, (string) $username, (string) $password, $driverOptions);
40
    }
41
}
42