Connection is now using Gbili\Db\Req\Req underneath

This commit is contained in:
Guillermo Dev
2018-10-15 23:55:25 +02:00
parent 94e0c867d7
commit 943c65bd46
3 changed files with 24 additions and 33 deletions

5
boot/bootstrap.php Normal file
View File

@@ -0,0 +1,5 @@
<?php
use \Bsr\Utils\Configuration\Configuration;
use \Gbili\Db\Req\AbstractReq;
AbstractReq::generateAdapter(Configuration::get('db_req'));

View File

@@ -13,10 +13,15 @@
{
"type" : "vcs",
"url" : "https://usrpath@bitbucket.org/usrpath/bsrutils.git"
},
{
"type" : "vcs",
"url" : "https://usrpath@bitbucket.org/usrpath/gbilidbreq.git"
}
],
"require" : {
"bsr/utils" : "v2.0.1"
"bsr/utils" : "v2.0.1",
"gbili/dbreq" : "^0.0.2"
},
"autoload": {
"psr-4": {"Bsr\\" : "src/"}

View File

@@ -3,13 +3,14 @@ namespace Bsr\Db;
use Bsr\Utils\Configuration\Configuration;
use Bsr\Db\Exception\SqlException;
use Gbili\Db\Req\Req;
class Connection
{
// Internal variable to hold the connection
private static $db;
final private function __construct() {}
/**
* @var Gbili\Db\Req\Req
*/
private static $req;
/**
* @param $query
@@ -17,40 +18,20 @@ class Connection
* @return OdbcResultSet|resource|string
* @throws SqlException
*/
public static function execute($query, $throw_error = false)
public static function execute($sql, $values)
{
$result = odbc_exec(self::get(), utf8_decode($query));
$result = new OdbcResultSet($result);
if ($result->is_error()) {
if($throw_error) {
throw new SqlException($result->get_error(), $query);
}
return $result->get_error();
if (null === self::$req) {
self::$req = new Req();
}
return $result;
return self::$req->getResultSet($sql, $values);
}
/**
* @return PDO connection
*/
public static function get()
{
if (is_null(self::$db)) {
$dsn = sprintf(
"Driver={%s};Server=%s,%s;Database=%s;",
Configuration::get('db.driver'),
Configuration::get('db.server'),
Configuration::get('db.port'),
Configuration::get('db.name')
);
self::$db = odbc_pconnect($dsn, Configuration::get('db.username'), Configuration::get('db.password'));
if (self::$db === false) {
throw new SqlException("Unable to connect to the server.");
}
}
// Return the connection
return self::$db;
return self::$req->getAdapter();
}
final private function __clone() {}