示例#1
0
 /**
  * Efetua o mapeamento da classe.
  *
  * @param Lumine_Base $target
  * @author Hugo Ferreira da Silva
  */
 public static function mapClass(Lumine_Descriptor_AbstractDescriptor $descriptor, Lumine_Configuration $config)
 {
     if (!isset(self::$mappedClasses[$descriptor->getClassname()])) {
         $cache = $config->getCacheImpl();
         $key = 'lumine:map:' . $descriptor->getClassname();
         if ($cache->exists($key)) {
             $classmap = $cache->fetch($key);
             if ($classmap['time'] != $descriptor->getModificationTime()) {
                 $classmap = $descriptor->parse();
                 $cache->store($key, $classmap);
             }
         } else {
             $classmap = $descriptor->parse();
             $cache->store($key, $classmap);
         }
         self::$mappedClasses[$descriptor->getClassname()] = $classmap;
     }
 }