first commit

This commit is contained in:
Sven Wappler
2021-04-17 21:20:54 +02:00
parent c93ec9492a
commit cadcc8edb4
406 changed files with 4917 additions and 5157 deletions

View File

@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
/***************************************************************
* Copyright notice
*
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
@@ -37,7 +37,7 @@ abstract class AbstractFieldList extends AbstractDeactivatable
protected $fieldList = [];
/**
* Parameter key which should be used for Apache Solr URL query
* Parameter key which should be used for Meilisearch URL query
*
* @var string
*/

View File

@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
/***************************************************************
* Copyright notice
*
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
class BigramPhraseFields extends AbstractFieldList implements ParameterBuilder
{
/**
* Parameter key which should be used for Apache Solr URL query
* Parameter key which should be used for Meilisearch URL query
*
* @var string
*/
@@ -52,17 +52,17 @@ class BigramPhraseFields extends AbstractFieldList implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return BigramPhraseFields
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getBigramPhraseSearchIsEnabled();
$isEnabled = $meilisearchConfiguration->getBigramPhraseSearchIsEnabled();
if (!$isEnabled) {
return new BigramPhraseFields(false);
}
return self::fromString((string)$solrConfiguration->getSearchQueryBigramPhraseFields());
return self::fromString((string)$meilisearchConfiguration->getSearchQueryBigramPhraseFields());
}
/**

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The Elevation ParameterProvider is responsible to build the solr query parameters
* The Elevation ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the elevation.
*/
class Elevation extends AbstractDeactivatable implements ParameterBuilder
@@ -89,18 +89,18 @@ class Elevation extends AbstractDeactivatable implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Elevation
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchElevation();
$isEnabled = $meilisearchConfiguration->getSearchElevation();
if (!$isEnabled) {
return new Elevation(false);
}
$force = $solrConfiguration->getSearchElevationForceElevation();
$markResults = $solrConfiguration->getSearchElevationMarkElevatedResults();
$force = $meilisearchConfiguration->getSearchElevationForceElevation();
$markResults = $meilisearchConfiguration->getSearchElevationMarkElevatedResults();
return new Elevation(true, $force, $markResults);
}

View File

@@ -30,7 +30,7 @@ use WapplerSystems\Meilisearch\Domain\Search\ResultSet\Facets\SortingExpression;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The Faceting ParameterProvider is responsible to build the solr query parameters
* The Faceting ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the highlighting.
*/
class Faceting extends AbstractDeactivatable implements ParameterBuilder
@@ -196,19 +196,19 @@ class Faceting extends AbstractDeactivatable implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Faceting
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchFaceting();
$isEnabled = $meilisearchConfiguration->getSearchFaceting();
if (!$isEnabled) {
return new Faceting(false);
}
$minCount = $solrConfiguration->getSearchFacetingMinimumCount();
$limit = $solrConfiguration->getSearchFacetingFacetLimit();
$sorting = $solrConfiguration->getSearchFacetingSortBy();
$minCount = $meilisearchConfiguration->getSearchFacetingMinimumCount();
$limit = $meilisearchConfiguration->getSearchFacetingFacetLimit();
$sorting = $meilisearchConfiguration->getSearchFacetingSortBy();
return new Faceting($isEnabled, $sorting, $minCount, $limit);
}

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The FieldCollapsing ParameterProvider is responsible to build the solr query parameters
* The FieldCollapsing ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the field collapsing.
*/
class FieldCollapsing extends AbstractDeactivatable implements ParameterBuilder
@@ -112,19 +112,19 @@ class FieldCollapsing extends AbstractDeactivatable implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return FieldCollapsing
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchVariants();
$isEnabled = $meilisearchConfiguration->getSearchVariants();
if (!$isEnabled) {
return new FieldCollapsing(false);
}
$collapseField = $solrConfiguration->getSearchVariantsField();
$expand = (bool)$solrConfiguration->getSearchVariantsExpand();
$expandRows = $solrConfiguration->getSearchVariantsLimit();
$collapseField = $meilisearchConfiguration->getSearchVariantsField();
$expand = (bool)$meilisearchConfiguration->getSearchVariantsExpand();
$expandRows = $meilisearchConfiguration->getSearchVariantsLimit();
return new FieldCollapsing(true, $collapseField, $expand, $expandRows);
}

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The Filters ParameterProvider is responsible to build the solr query parameters
* The Filters ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the filtering.
*/
class Filters
@@ -140,10 +140,10 @@ class Filters
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Filters
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
return new Filters();
}

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The Grouping ParameterProvider is responsible to build the solr query parameters
* The Grouping ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the grouping.
*/
class Grouping extends AbstractDeactivatable implements ParameterBuilder
@@ -185,12 +185,12 @@ class Grouping extends AbstractDeactivatable implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Grouping
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchGrouping();
$isEnabled = $meilisearchConfiguration->getSearchGrouping();
if (!$isEnabled) {
return new Grouping(false);
}
@@ -199,10 +199,10 @@ class Grouping extends AbstractDeactivatable implements ParameterBuilder
$queries = [];
$sortings = [];
$resultsPerGroup = $solrConfiguration->getSearchGroupingHighestGroupResultsLimit();
$configuredGroups = $solrConfiguration->getSearchGroupingGroupsConfiguration();
$numberOfGroups = $solrConfiguration->getSearchGroupingNumberOfGroups();
$sortBy = $solrConfiguration->getSearchGroupingSortBy();
$resultsPerGroup = $meilisearchConfiguration->getSearchGroupingHighestGroupResultsLimit();
$configuredGroups = $meilisearchConfiguration->getSearchGroupingGroupsConfiguration();
$numberOfGroups = $meilisearchConfiguration->getSearchGroupingNumberOfGroups();
$sortBy = $meilisearchConfiguration->getSearchGroupingSortBy();
foreach ($configuredGroups as $groupName => $groupConfiguration) {
if (isset($groupConfiguration['field'])) {

View File

@@ -30,7 +30,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The Highlighting ParameterProvider is responsible to build the solr query parameters
* The Highlighting ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the highlighting.
*/
class Highlighting extends AbstractDeactivatable implements ParameterBuilder
@@ -147,19 +147,19 @@ class Highlighting extends AbstractDeactivatable implements ParameterBuilder
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Highlighting
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchResultsHighlighting();
$isEnabled = $meilisearchConfiguration->getSearchResultsHighlighting();
if (!$isEnabled) {
return new Highlighting(false);
}
$fragmentSize = $solrConfiguration->getSearchResultsHighlightingFragmentSize();
$highlightingFields = $solrConfiguration->getSearchResultsHighlightingFields();
$wrap = explode('|', $solrConfiguration->getSearchResultsHighlightingWrap());
$fragmentSize = $meilisearchConfiguration->getSearchResultsHighlightingFragmentSize();
$highlightingFields = $meilisearchConfiguration->getSearchResultsHighlightingFields();
$wrap = explode('|', $meilisearchConfiguration->getSearchResultsHighlightingWrap());
$prefix = isset($wrap[0]) ? $wrap[0] : '';
$postfix = isset($wrap[1]) ? $wrap[1] : '';

View File

@@ -26,7 +26,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
/**
* The Operator ParameterProvider is responsible to build the solr query parameters
* The Operator ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the operator q.op.
*/
class Operator extends AbstractDeactivatable

View File

@@ -29,7 +29,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
/**
* The implementation of ParameterBuilder is responsible to build an array with
* the query parameter that are needed for solr
* the query parameter that are needed for meilisearch
*
* Interface ParameterProvider
*/

View File

@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
/***************************************************************
* Copyright notice
*
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
class PhraseFields extends AbstractFieldList implements ParameterBuilder
{
/**
* Parameter key which should be used for Apache Solr URL query
* Parameter key which should be used for Meilisearch URL query
*
* @var string
*/
@@ -52,17 +52,17 @@ class PhraseFields extends AbstractFieldList implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return PhraseFields
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getPhraseSearchIsEnabled();
$isEnabled = $meilisearchConfiguration->getPhraseSearchIsEnabled();
if (!$isEnabled) {
return new PhraseFields(false);
}
return self::fromString((string)$solrConfiguration->getSearchQueryPhraseFields());
return self::fromString((string)$meilisearchConfiguration->getSearchQueryPhraseFields());
}
/**

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The QueryFields class holds all information for the query which fields should be used to query (Solr qf parameter).
* The QueryFields class holds all information for the query which fields should be used to query (Meilisearch qf parameter).
*/
class QueryFields implements ParameterBuilder
{

View File

@@ -30,7 +30,7 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The ReturnFields class is responsible to hold a list of field names that should be returned from
* solr.
* meilisearch.
*/
class ReturnFields implements ParameterBuilder
{

View File

@@ -29,7 +29,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The Slops ParameterProvider is responsible to build the solr query parameters
* The Slops ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the several slop arguments.
*/
class Slops implements ParameterBuilder
@@ -171,12 +171,12 @@ class Slops implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Slops
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$searchConfiguration = $solrConfiguration->getSearchConfiguration();
$searchConfiguration = $meilisearchConfiguration->getSearchConfiguration();
$querySlop = static::getQuerySlopFromConfiguration($searchConfiguration);
$phraseSlop = static::getPhraseSlopFromConfiguration($searchConfiguration);
$bigramPhraseSlop = static::getBigramPhraseSlopFromConfiguration($searchConfiguration);

View File

@@ -27,7 +27,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The Sorting ParameterProvider is responsible to build the solr query parameters
* The Sorting ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the sorting.
*/
class Sorting extends AbstractDeactivatable

View File

@@ -27,7 +27,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* The Sorting ParameterProvider is responsible to build the solr query parameters
* The Sorting ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the sorting.
*/
class Sortings extends AbstractDeactivatable

View File

@@ -28,7 +28,7 @@ use WapplerSystems\Meilisearch\Domain\Search\Query\AbstractQueryBuilder;
use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
/**
* The Spellchecking ParameterProvider is responsible to build the solr query parameters
* The Spellchecking ParameterProvider is responsible to build the meilisearch query parameters
* that are needed for the spellchecking.
*/
class Spellchecking extends AbstractDeactivatable implements ParameterBuilder
@@ -60,17 +60,17 @@ class Spellchecking extends AbstractDeactivatable implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return Spellchecking
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getSearchSpellchecking();
$isEnabled = $meilisearchConfiguration->getSearchSpellchecking();
if (!$isEnabled) {
return new Spellchecking(false);
}
$maxCollationTries = $solrConfiguration->getSearchSpellcheckingNumberOfSuggestionsToTry();
$maxCollationTries = $meilisearchConfiguration->getSearchSpellcheckingNumberOfSuggestionsToTry();
return new Spellchecking($isEnabled, $maxCollationTries);
}

View File

@@ -4,7 +4,7 @@ namespace WapplerSystems\Meilisearch\Domain\Search\Query\ParameterBuilder;
/***************************************************************
* Copyright notice
*
* (c) 2010-2017 dkd Internet Service GmbH <solr-support@dkd.de>
* (c) 2010-2017 dkd Internet Service GmbH <meilisearch-support@dkd.de>
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
@@ -33,7 +33,7 @@ use WapplerSystems\Meilisearch\System\Configuration\TypoScriptConfiguration;
class TrigramPhraseFields extends AbstractFieldList implements ParameterBuilder
{
/**
* Parameter key which should be used for Apache Solr URL query
* Parameter key which should be used for Meilisearch URL query
*
* @var string
*/
@@ -52,17 +52,17 @@ class TrigramPhraseFields extends AbstractFieldList implements ParameterBuilder
}
/**
* @param TypoScriptConfiguration $solrConfiguration
* @param TypoScriptConfiguration $meilisearchConfiguration
* @return TrigramPhraseFields
*/
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $solrConfiguration)
public static function fromTypoScriptConfiguration(TypoScriptConfiguration $meilisearchConfiguration)
{
$isEnabled = $solrConfiguration->getTrigramPhraseSearchIsEnabled();
$isEnabled = $meilisearchConfiguration->getTrigramPhraseSearchIsEnabled();
if (!$isEnabled) {
return new TrigramPhraseFields(false);
}
return self::fromString((string)$solrConfiguration->getSearchQueryTrigramPhraseFields());
return self::fromString((string)$meilisearchConfiguration->getSearchQueryTrigramPhraseFields());
}
/**