Example #1
0
 /**
  * Get from document
  *
  * @param DocumentInterface $document
  * @return $this
  */
 public function fromDocument(DocumentInterface $document)
 {
     if (null === ($id = $document->getId())) {
         throw new PelasticInvalidArgumentException("For accessing GET api your document should provide an ID.");
     }
     $this->document = $document;
 }
Example #2
0
 /**
  * Build from raw array
  *
  * @param RawResponseInterface $raw
  * @return ResponseInterface
  */
 public function build(RawResponseInterface $raw)
 {
     $this->raw = $raw;
     $metaData = array_only($this->raw->getArray(), ['_version', 'found', '_index', '_type', '_id']);
     $source = $this->raw['_source'];
     if (null === ($document = $this->getDocument())) {
         $this->document = new Document($source, $metaData['_id'], $metaData);
     } else {
         $this->document->create($source, $metaData['_id'], $metaData);
     }
     return $this;
 }
Example #3
0
 /**
  * Make with all attributes
  *
  * @param $index
  * @param null $type
  * @param DocumentInterface $document
  * @param null $id
  * @param array $params
  * @return $this
  */
 public function make($index, $type = null, DocumentInterface $document, $id = null, array $params = [])
 {
     $this->setIndex($index);
     if (null !== $type) {
         $this->setType($type);
     }
     if (null !== $id) {
         $this->setDocumentId($id);
     } elseif (($id = $document->getId()) !== null) {
         $this->setDocumentId($id);
     }
     if (!empty($params)) {
         $this->setParams($params);
     }
     return $this;
 }