SS 4.0 - Upgrade Solr & Solr Index
This commit is contained in:
parent
7baf7d5758
commit
4530fb21fe
|
@ -1,8 +1,12 @@
|
|||
<?php
|
||||
|
||||
namespace SilverStripe\FullTextSearch\Solr;
|
||||
|
||||
use SilverStripe\Control\Director;
|
||||
use SilverStripe\Core\Object;
|
||||
use SilverStripe\FullTextSearch\Search\FullTextSearch;
|
||||
use SilverStripe\FullTextSearch\Solr\Services\Solr4Service;
|
||||
use SilverStripe\FullTextSearch\Solr\Services\Solr3Service;
|
||||
|
||||
class Solr
|
||||
{
|
||||
|
@ -78,13 +82,13 @@ class Solr
|
|||
|
||||
if (version_compare($version, '4', '>=')) {
|
||||
$versionDefaults = array(
|
||||
'service' => 'Solr4Service',
|
||||
'service' => Solr4Service::class,
|
||||
'extraspath' => Director::baseFolder().'/fulltextsearch/conf/solr/4/extras/',
|
||||
'templatespath' => Director::baseFolder().'/fulltextsearch/conf/solr/4/templates/',
|
||||
);
|
||||
} else {
|
||||
$versionDefaults = array(
|
||||
'service' => 'Solr3Service',
|
||||
'service' => Solr3Service::class,
|
||||
'extraspath' => Director::baseFolder().'/fulltextsearch/conf/solr/3/extras/',
|
||||
'templatespath' => Director::baseFolder().'/fulltextsearch/conf/solr/3/templates/',
|
||||
);
|
||||
|
@ -136,7 +140,7 @@ class Solr
|
|||
|
||||
public static function get_indexes()
|
||||
{
|
||||
return FullTextSearch::get_indexes('SolrIndex');
|
||||
return FullTextSearch::get_indexes(SolrIndex::class);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -156,4 +160,4 @@ class Solr
|
|||
$included = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,9 +1,20 @@
|
|||
<?php
|
||||
|
||||
namespace SilverStripe\FullTextSearch\Solr;
|
||||
Solr::include_client_api();
|
||||
|
||||
use SilverStripe\Control\Director;
|
||||
use SilverStripe\FulltextSearch\Search\Indexes\SearchIndex;
|
||||
use SilverStripe\FullTextSearch\Solr\Services\SolrService;
|
||||
use SilverStripe\FulltextSearch\Search\Queries\SearchQuery;
|
||||
use SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range;
|
||||
use SilverStripe\FullTextSearch\Search\Variants\SearchVariant;
|
||||
use SilverStripe\FulltextSearch\Search\SearchIntrospection;
|
||||
use SilverStripe\ORM\ArrayList;
|
||||
use SilverStripe\ORM\DataObject;
|
||||
use SilverStripe\ORM\FieldType\DBField;
|
||||
use SilverStripe\ORM\PaginatedList;
|
||||
use SilverStripe\View\ArrayData;
|
||||
|
||||
abstract class SolrIndex extends SearchIndex
|
||||
{
|
||||
|
@ -314,7 +325,7 @@ abstract class SolrIndex extends SearchIndex
|
|||
public function setFieldBoosting($field, $level)
|
||||
{
|
||||
if (!isset($this->fulltextFields[$field])) {
|
||||
throw new InvalidArgumentException("No fulltext field $field exists on ".$this->getIndexName());
|
||||
throw new \InvalidArgumentException("No fulltext field $field exists on ".$this->getIndexName());
|
||||
}
|
||||
if ($level === null) {
|
||||
unset($this->boostedFields[$field]);
|
||||
|
@ -578,7 +589,7 @@ abstract class SolrIndex extends SearchIndex
|
|||
|
||||
foreach ($this->getClasses() as $searchclass => $options) {
|
||||
if ($searchclass == $class || ($options['include_children'] && is_subclass_of($class, $searchclass))) {
|
||||
$base = ClassInfo::baseDataClass($searchclass);
|
||||
$base = DataObject::getSchema()->baseDataClass($searchclass);
|
||||
$docs[] = $this->_addAs($object, $base, $options);
|
||||
}
|
||||
}
|
||||
|
@ -743,7 +754,7 @@ abstract class SolrIndex extends SearchIndex
|
|||
$offset,
|
||||
$limit,
|
||||
$params,
|
||||
Apache_Solr_Service::METHOD_POST
|
||||
\Apache_Solr_Service::METHOD_POST
|
||||
);
|
||||
|
||||
$results = new ArrayList();
|
||||
|
|
Loading…
Reference in New Issue