fetchData( $this->properties['location'] . $this->properties['options']->metaDataFile ); $dataArr = unserialize( $dataStr ); $result = null; if ( $dataArr !== false ) { $result = new $dataArr['class'](); $result->setState( $dataArr['data'] ); } return $result; } /** * Stores the given meta data struct. * * This method stores the given $metaData inside the storage. The data must * be stored with the same mechanism that the storage itself uses. However, * it should not be stored as a normal cache item, if possible, to avoid * accedental user manipulation. * * @param ezcCacheStackMetaData $metaData * @return void */ public function storeMetaData( ezcCacheStackMetaData $metaData ) { $dataArr = array( 'class' => get_class( $metaData ), 'data' => $metaData->getState(), ); // This storage only handles scalar values, so we serialize here. $dataStr = serialize( $dataArr ); $this->storeRawData( $this->properties['location'] . $this->properties['options']->metaDataFile, $this->prepareData( $dataStr ) ); } } ?>