Пример #1
0
 /**
  * Get the boot data
  *
  * @param \stdClass $CONFIG Elgg config object
  * @param Database  $db     Elgg database
  *
  * @return BootData
  *
  * @throws \InstallationException
  */
 private function getBootData(\stdClass $CONFIG, Database $db)
 {
     $CONFIG->_boot_cache_hit = false;
     if (!$CONFIG->boot_cache_ttl) {
         $data = new BootData();
         $data->populate($CONFIG, $db, _elgg_services()->entityTable, _elgg_services()->plugins);
         return $data;
     }
     $item = $this->getStashItem($CONFIG);
     $item->setInvalidationMethod(Invalidation::NONE);
     $data = $item->get();
     if ($item->isMiss()) {
         $data = new BootData();
         $data->populate($CONFIG, $db, _elgg_services()->entityTable, _elgg_services()->plugins);
         $item->set($data);
         $item->expiresAfter($CONFIG->boot_cache_ttl);
         $item->save();
     } else {
         $CONFIG->_boot_cache_hit = true;
     }
     return $data;
 }