1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Search\Model;
use Magento\Framework\App\ResourceConnection;
use Magento\Framework\Data\Collection\AbstractDb as DbCollection;
use Magento\Framework\Model\AbstractModel;
use Magento\Framework\Model\ResourceModel\AbstractResource;
use Magento\Framework\Registry;
/**
* Data model to retrieve synonyms by passed in phrase
*
* @method \Magento\Search\Model\SynonymReader setGroupId(int $group)
* @method int getGroupId()
* @method \Magento\Search\Model\SynonymReader setStoreId(int $storeId)
* @method int getStoreId()
* @method \Magento\Search\Model\SynonymReader setWebsiteId(int $websiteId)
* @method int getWebsiteId()
* @method \Magento\Search\Model\SynonymReader setSynonyms(string $value)
* @method string getSynonyms()
* @api
* @since 100.1.0
*/
class SynonymReader extends AbstractModel
{
/**
* Event prefix
*
* @var string
* @since 100.1.0
*/
protected $_eventPrefix = 'search_synonyms';
/**
* Event object key name
*
* @var string
* @since 100.1.0
*/
protected $_eventObject = 'search_synonyms';
/**
* Construct
*
* @param \Magento\Framework\Model\Context $context
* @param Registry $registry
* @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource
* @param DbCollection $resourceCollection
* @param array $data
*/
public function __construct(
\Magento\Framework\Model\Context $context,
Registry $registry,
AbstractResource $resource = null,
DbCollection $resourceCollection = null,
array $data = []
) {
parent::__construct($context, $registry, $resource, $resourceCollection, $data);
}
/**
* Init resource model
*
* @return void
* @since 100.1.0
*/
protected function _construct()
{
$this->_init(\Magento\Search\Model\ResourceModel\SynonymReader::class);
}
/**
* Load synonyms by user query phrase in context of current store view
*
* @param string $phrase
* @return $this
* @throws \Magento\Framework\Exception\LocalizedException
* @since 100.1.0
*/
public function loadByPhrase($phrase)
{
$this->_getResource()->loadByPhrase($this, strtolower($phrase));
$this->_afterLoad();
$this->setOrigData();
return $this;
}
}