Doctrine\Search\ElasticSearch\Client::addDocuments PHP Метод

addDocuments() публичный Метод

{@inheritDoc}
public addDocuments ( ClassMetadata $class, array $documents )
$class Doctrine\Search\Mapping\ClassMetadata
$documents array
    public function addDocuments(ClassMetadata $class, array $documents)
    {
        $type = $this->getIndex($class->index)->getType($class->type);
        $parameters = $this->getParameters($class->parameters);
        $bulk = array();
        foreach ($documents as $id => $document) {
            $elasticaDoc = new Document($id);
            foreach ($parameters as $name => $value) {
                if (isset($document[$value])) {
                    if (method_exists($elasticaDoc, "set{$name}")) {
                        $elasticaDoc->{"set{$name}"}($document[$value]);
                    } else {
                        $elasticaDoc->setParam($name, $document[$value]);
                    }
                    unset($document[$value]);
                }
            }
            $elasticaDoc->setData($document);
            $bulk[] = $elasticaDoc;
        }
        if (count($bulk) > 1) {
            $type->addDocuments($bulk);
        } else {
            $type->addDocument($bulk[0]);
        }
    }