5 require_once __DIR__
."/config.php";
6 require_once __DIR__
."/pq.php";
11 use SplSubject
, SplObserver
;
13 class QueryLogger
extends Logger
implements SplObserver
15 function update(SplSubject
$executor) {
16 if (($result = $executor->getResult())) {
17 $query = $executor->getQuery();
18 $this->debug($query, [
19 "params" => $query->getParams(),
26 /* @var $injector \Auryn\Injector */
28 $injector->prepare(Executor
::class, function(Executor
$executor, Injector
$injector) {
29 $executor->attach(new QueryLogger($injector->make(Config
::class), "query"));
32 foreach ([Model\Accounts
::class, Model\Tokens
::class, Model\Authorities
::class, Model\Owners
::class] as $class) {
33 $injector->prepare($class, function(Table
$table, Injector
$injector) {
34 $table->setQueryExecutor($injector->make(Executor
::class));
38 \pq\Gateway\Table
::$defaultResolver = function($table) use($injector) {
39 return $injector->make("app\\Model\\" . ucfirst($table));