protected function getFieldsInformation($fieldIdentifier)
    {
        $fieldMapArray = array();
        $fieldMap = $this->contentTypeHandler->getSearchableFieldMap();

        foreach ($fieldMap as $contentTypeIdentifier => $fieldIdentifierMap) {
            // First check if field exists in the current ContentType, there is nothing to do if it doesn't
            if (!isset($fieldIdentifierMap[$fieldIdentifier])) {
                continue;
            }

            $fieldTypeIdentifier = $fieldIdentifierMap[$fieldIdentifier]['field_type_identifier'];
            $fieldMapArray[$fieldTypeIdentifier]['ids'][] = $fieldIdentifierMap[$fieldIdentifier]['field_definition_id'];
            if (!isset($fieldMapArray[$fieldTypeIdentifier]['column'])) {
                $fieldMapArray[$fieldTypeIdentifier]['column'] = $this->fieldConverterRegistry->getConverter($fieldTypeIdentifier)->getIndexColumn();
            }
        }

        if (empty($fieldMapArray)) {
            throw new InvalidArgumentException(
                '$criterion->target',
                "No searchable fields found for the given criterion target '{$fieldIdentifier}'."
            );
        }

        return $fieldMapArray;
    }
protected function getFieldsInformation($fieldIdentifier)
    {
        $fieldMapArray = array();
        $fieldMap = $this->contentTypeHandler->getSearchableFieldMap();

        foreach ($fieldMap as $contentTypeIdentifier => $fieldIdentifierMap) {
            // First check if field exists in the current ContentType, there is nothing to do if it doesn't
            if (!isset($fieldIdentifierMap[$fieldIdentifier])) {
                continue;
            }

            $fieldTypeIdentifier = $fieldIdentifierMap[$fieldIdentifier]['field_type_identifier'];
            $fieldMapArray[$fieldTypeIdentifier]['ids'][] = $fieldIdentifierMap[$fieldIdentifier]['field_definition_id'];
            if (!isset($fieldMapArray[$fieldTypeIdentifier]['column'])) {
                $fieldMapArray[$fieldTypeIdentifier]['column'] = $this->fieldConverterRegistry->getConverter($fieldTypeIdentifier)->getIndexColumn();
            }
        }

        if (empty($fieldMapArray)) {
            throw new InvalidArgumentException(
                '$criterion->target',
                "No searchable fields found for the given criterion target '{$fieldIdentifier}'."
            );
        }

        return $fieldMapArray;
    }
protected function getFieldsInformation ( $ fieldIdentifier ) { $ fieldMapArray = array ( ) ; $ fieldMap = $ this -> contentTypeHandler -> getSearchableFieldMap ( ) ; foreach ( $ fieldMap as $ contentTypeIdentifier => $ fieldIdentifierMap ) { // First check if field exists in the current ContentType, there is nothing to do if it doesn't if ( ! isset ( $ fieldIdentifierMap [ $ fieldIdentifier ] ) ) { continue ; } $ fieldTypeIdentifier = $ fieldIdentifierMap [ $ fieldIdentifier ] [ 'field_type_identifier' ] ; $ fieldMapArray [ $ fieldTypeIdentifier ] [ 'ids' ] [ ] = $ fieldIdentifierMap [ $ fieldIdentifier ] [ 'field_definition_id' ] ; if ( ! isset ( $ fieldMapArray [ $ fieldTypeIdentifier ] [ 'column' ] ) ) { $ fieldMapArray [ $ fieldTypeIdentifier ] [ 'column' ] = $ this -> fieldConverterRegistry -> getConverter ( $ fieldTypeIdentifier ) -> getIndexColumn ( ) ; } } if ( empty ( $ fieldMapArray ) ) { throw new InvalidArgumentException ( '$criterion->target' , "No searchable fields found for the given criterion target '{$fieldIdentifier}'." ) ; } return $ fieldMapArray ; }
Returns relevant field information for the specified field.

The returned information is returned as an array of the attribute
identifier and the sort column, which should be used.

@throws \eZ\Publish\Core\Base\Exceptions\InvalidArgumentException If no searchable fields are found for the given $fieldIdentifier.
@throws \RuntimeException if no converter is found

@param string $fieldIdentifier

@return array

@throws \eZ\Publish\Core\Persistence\Legacy\Content\FieldValue\Converter\Exception\NotFound
Returns relevant field information for the specified field .