/** * Constructor * * @param AdapterInterface $adapter */ public function __construct(AdapterInterface $adapter) { $this->adapter = $adapter; try { $this->cacher = CachePool::get('MetadataCacher'); if ($this->cacher instanceof \General\Cache\Storage\StorageInterface) { $this->cacher->getResource(); } } catch (\Exception $e) { $this->cacher = null; $message = 'MetaDataCacher Connect Error: ' . $e->getMessage() . "\n"; error_log($message); } $this->defaultSchema = $adapter->getDriver()->getConnection()->getCurrentSchema() ?: self::DEFAULT_SCHEMA; }
/** * @param SqlInterface|null $sql * @return string */ public function getSqlString(SqlInterface $sql = null) { $sql = $sql ?: $this->lastSql; if (!$sql) { throw new Exception\InvalidArgumentException('Sql sequence is not supplied.'); } return $sql->getSqlString($this->adapter->getPlatform()); }