/** * Set cache data * * @param Charcoal_String $key string name to identify cached data * @param Charcoal_Object $value cache data to save */ public function setCache($key, $value) { // Charcoal_ParamTrait::validateString( 1, $key ); try { Charcoal_Cache::set($key, $value); } catch (Exception $ex) { _catch($ex); _throw(new Charcoal_EventContextException(__METHOD__ . '() failed.', $ex)); } }
/** * テスト */ public function test($action, $context) { $action = us($action); $cache_driver = Charcoal_Factory::createObject(s('memcache'), s('cache_driver'), s('Charcoal_ICacheDriver')); Charcoal_Cache::register(s('memcache'), $cache_driver); switch ($action) { case "get_empty_data": Charcoal_Cache::delete(s('foo')); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(FALSE, $value); return TRUE; case "get_integer_data": Charcoal_Cache::set(s('foo'), i(100)); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(i(100), $value); return TRUE; case "get_string_data": Charcoal_Cache::set(s('foo'), s('bar')); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(s('bar'), $value); return TRUE; case "get_array_data": $data = array('foo' => 100, 'bar' => 'baz'); Charcoal_Cache::set(s('foo'), v($data)); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(v($data), $value); return TRUE; case "get_boolean_data": Charcoal_Cache::set(s('foo'), b(TRUE)); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(b(TRUE), $value); Charcoal_Cache::set(s('foo'), b(FALSE)); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(b(FALSE), $value); return TRUE; case "get_float_data": Charcoal_Cache::set(s('foo'), f(3.14)); $value = Charcoal_Cache::get(s('foo')); $this->assertEquals(f(3.14), $value); return TRUE; case "get_object_data": $data = new Charcoal_DTO(); $data['foo'] = 100; $data['bar'] = 'test'; Charcoal_Cache::set(s('foo'), $data); $value = Charcoal_Cache::get(s('foo')); echo "value:" . print_r($value, true) . eol(); $this->assertEquals($data, $value); return TRUE; } return FALSE; }