Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
NestedIndexField
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
12
0.00% covered (danger)
0.00%
0 / 1
 addSubfield
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getMapping
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2
3namespace CirrusSearch\Search;
4
5use SearchEngine;
6use SearchIndexField;
7
8class NestedIndexField extends CirrusIndexField {
9    /** @inheritDoc */
10    protected $typeName = "nested";
11
12    /**
13     * Add sub-field for nested field
14     * @param string $name Field name
15     * @param SearchIndexField $subfield Field object
16     */
17    public function addSubfield( $name, SearchIndexField $subfield ) {
18        $this->subfields[$name] = $subfield;
19    }
20
21    public function getMapping( SearchEngine $engine ) {
22        $fields = parent::getMapping( $engine );
23        foreach ( $this->subfields as $name => $sub ) {
24            $fields['properties'][$name] = $sub->getMapping( $engine );
25        }
26        return $fields;
27    }
28}