public function __construct(\Solarium\QueryType\Update\Query\Query $update, \core_kernel_classes_Resource $resource) { $this->resource = $resource; $this->document = $update->createDocument(); $this->indexUri(); $this->indexTypes(); }
/** * Implements SearchEngineAbstract::indexDocument(). * * @param CollectionAbstract $collection * @param SolrIndexDocument $document */ public function indexDocument(CollectionAbstract $collection, IndexDocument $document) { $solarium_document = $this->_update->createDocument(); if (null !== ($boost = $document->getBoost())) { $solarium_document->setBoost($boost); } foreach ($document as $field_id => $normalized_value) { $field = $document->getField($field_id); $name = $field->getName(); $solarium_document->{$name} = $normalized_value; if (null !== ($boost = $field->getBoost())) { $solarium_document->setFieldBoost($name, $boost); } } $this->_documents[] = $solarium_document; }
/** * Create a document object instance and add it to the buffer. * * @param array $fields * @param array $boosts * * @return self Provides fluent interface */ public function createDocument($fields, $boosts = array()) { $doc = $this->updateQuery->createDocument($fields, $boosts); $this->addDocument($doc); return $this; }
/** * Add delete command to main update query * * @param \Solarium\QueryType\Update\Query\Query $query * @param array $fields * * @return self */ public function addDocument(UpdateQuery $query, array $fields) { $document = $query->createDocument($fields); $query->addDocument($document); return $this; }