From 2ed67c1944ce8744130c3689a37b37476dce323c Mon Sep 17 00:00:00 2001 From: David Grudl Date: Tue, 3 Aug 2010 00:44:59 +0200 Subject: [PATCH] DibiConnection: uses single DibiTranslator object (per-connection) --- dibi/libs/DibiConnection.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dibi/libs/DibiConnection.php b/dibi/libs/DibiConnection.php index 7fb82517..1fcefc0c 100644 --- a/dibi/libs/DibiConnection.php +++ b/dibi/libs/DibiConnection.php @@ -34,6 +34,9 @@ class DibiConnection extends DibiObject /** @var IDibiDriver Driver */ private $driver; + /** @var IDibiDriver Driver */ + private $translator; + /** @var IDibiProfiler Profiler */ private $profiler; @@ -88,6 +91,7 @@ class DibiConnection extends DibiObject $config['name'] = $name; $this->config = $config; $this->driver = new $class; + $this->translator = new DibiTranslator($this->driver); // profiler $profilerCfg = & $config['profiler']; @@ -251,8 +255,7 @@ class DibiConnection extends DibiObject { $args = func_get_args(); $this->connect(); - $translator = new DibiTranslator($this->driver); - return $this->nativeQuery($translator->translate($args)); + return $this->nativeQuery($this->translator->translate($args)); } @@ -267,8 +270,7 @@ class DibiConnection extends DibiObject { $args = func_get_args(); $this->connect(); - $translator = new DibiTranslator($this->driver); - return $translator->translate($args); + return $this->translator->translate($args); } @@ -283,8 +285,7 @@ class DibiConnection extends DibiObject $args = func_get_args(); $this->connect(); try { - $translator = new DibiTranslator($this->driver); - dibi::dump($translator->translate($args)); + dibi::dump($this->translator->translate($args)); return TRUE; } catch (DibiException $e) { @@ -305,8 +306,7 @@ class DibiConnection extends DibiObject { $args = func_get_args(); $this->connect(); - $translator = new DibiTranslator($this->driver); - return new DibiDataSource($translator->translate($args), $this); + return new DibiDataSource($this->translator->translate($args), $this); }