public static function getInstance() { if (!self::$persons_instance) { self::$persons_instance = new Persons(); } return self::$persons_instance; }
public function updateAuthorsFull($aids) { $documents = array(); Books::$books_instance = false; // cached books? Persons::$persons_instance = false; // cached persons? $persons = Persons::getInstance()->getByIdsLoaded($aids); foreach ($persons as $person) { /* @var $person Person */ $documents[] = $this->prepareAuthorFull($person); } $authors = self::$authors; /* @var $books Apache_Solr_Service */ // удаляем из индекса $authors->deleteByMultipleIds($aids); // добавляем в индекс $authors->addDocuments($documents); // коммитим изменения $authors->commit(); // оптимизируем поисковую базу $authors->optimize(); }