From 17acca4dc740b51e654e425fa056853244c65c3e Mon Sep 17 00:00:00 2001 From: floriansemm Date: Mon, 14 Nov 2016 11:04:05 +0100 Subject: [PATCH] remove fq from delete-query --- Client/Solarium/SolariumMulticoreClient.php | 3 +- Query/DeleteDocumentQuery.php | 39 +++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 Query/DeleteDocumentQuery.php diff --git a/Client/Solarium/SolariumMulticoreClient.php b/Client/Solarium/SolariumMulticoreClient.php index 7660e1d7..71460d9d 100644 --- a/Client/Solarium/SolariumMulticoreClient.php +++ b/Client/Solarium/SolariumMulticoreClient.php @@ -3,6 +3,7 @@ namespace FS\SolrBundle\Client\Solarium; use FS\SolrBundle\Doctrine\Mapper\MetaInformationInterface; +use FS\SolrBundle\Query\DeleteDocumentQuery; use FS\SolrBundle\Query\FindByIdentifierQuery; use Solarium\Core\Query\QueryInterface; use Solarium\QueryType\Update\Query\Document\DocumentInterface; @@ -48,7 +49,7 @@ public function delete(DocumentInterface $document, $index) $documentFields = $document->getFields(); $documentKey = $documentFields[MetaInformationInterface::DOCUMENT_KEY_FIELD_NAME]; - $deleteQuery = new FindByIdentifierQuery(); + $deleteQuery = new DeleteDocumentQuery(); $deleteQuery->setDocument($document); $deleteQuery->setDocumentKey($documentKey); diff --git a/Query/DeleteDocumentQuery.php b/Query/DeleteDocumentQuery.php new file mode 100644 index 00000000..ab4582ff --- /dev/null +++ b/Query/DeleteDocumentQuery.php @@ -0,0 +1,39 @@ +documentKey = $documentKey; + } + + /** + * @return string + * + * @throws QueryException when id or document_name is null + */ + public function getQuery() + { + $idField = $this->documentKey; + + if ($idField == null) { + throw new QueryException('id should not be null'); + } + + $this->setQuery(sprintf('id:%s', $idField)); + + return parent::getQuery(); + } +} \ No newline at end of file