Пример #1
0
 public function testNonModelRecord()
 {
     $request = array('name' => 'lithium\\data\\entity\\Record', 'options' => array('model' => 'li3_memoize\\tests\\mocks\\Prose'));
     $expected = array('name' => 'lithium\\data\\entity\\Record', 'options' => array('model' => 'li3_memoize\\tests\\mocks\\Prose'));
     Memoize::catchModel($this, $request, $this);
     $this->assertEqual($expected, $request);
 }
Пример #2
0
<?php

use lithium\util\collection\Filters;
use li3_memoize\extensions\Memoize;
/**
 * Filters the creation of helpers/models
 */
Filters::apply('lithium\\core\\Libraries', 'instance', function ($self, $params, $chain) {
    // Prescan Model
    if (isset($params['options']['model'])) {
        Memoize::catchModel($self, $params, $chain);
    }
    $object = $chain->next($self, $params, $chain);
    // Postscan Helper
    if ($params['type'] == 'helper') {
        Memoize::catchHelper($object);
    }
    return $object;
});