コード例 #1
0
 function testSaveRestore()
 {
     lmbRegistry::set('Foo', 'foo');
     lmbRegistry::save('Foo');
     $this->assertEqual(lmbRegistry::get('Foo'), null);
     lmbRegistry::set('Foo', 'bar');
     $this->assertEqual(lmbRegistry::get('Foo'), 'bar');
     lmbRegistry::save('Foo');
     $this->assertEqual(lmbRegistry::get('Foo'), null);
     lmbRegistry::set('Foo', 'baz');
     $this->assertEqual(lmbRegistry::get('Foo'), 'baz');
     lmbRegistry::restore('Foo');
     $this->assertEqual(lmbRegistry::get('Foo'), 'bar');
     lmbRegistry::restore('Foo');
     $this->assertEqual(lmbRegistry::get('Foo'), 'foo');
 }
コード例 #2
0
 /**
  * Save current tools object in registry stack and creates a new one using currently saved empty copy of tools object
  * @see lmbRegistry :: save()
  * @return lmbToolkit The only instance of lmbToolkit class
  */
 static function save()
 {
     $toolkit = lmbToolkit::instance();
     $tools = $toolkit->_tools;
     $tools_copy = array();
     foreach ($toolkit->_tools as $tool) {
         $tools_copy[] = clone $tool;
     }
     lmbRegistry::set('__tools' . $toolkit->_id, $tools);
     lmbRegistry::save('__tools' . $toolkit->_id);
     $toolkit->setTools($tools_copy);
     lmbRegistry::set('__props' . $toolkit->_id, $toolkit->export());
     lmbRegistry::save('__props' . $toolkit->_id);
     return $toolkit;
 }