本文整理汇总了PHP中Magento\Framework\Indexer\IndexerRegistry类的典型用法代码示例。如果您正苦于以下问题:PHP IndexerRegistry类的具体用法?PHP IndexerRegistry怎么用?PHP IndexerRegistry使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了IndexerRegistry类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: setUp
public function setUp()
{
$this->_objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
$this->_subjectMock = $this->getMock('\\Magento\\Customer\\Api\\GroupRepositoryInterface', [], [], '', false);
$indexerMock = $this->getMock('Magento\\Indexer\\Model\\Indexer', ['getId', 'invalidate'], [], '', false);
$indexerMock->expects($this->once())->method('invalidate');
$this->indexerRegistryMock = $this->getMock('Magento\\Framework\\Indexer\\IndexerRegistry', ['get'], [], '', false);
$this->indexerRegistryMock->expects($this->once())->method('get')->with(\Magento\Catalog\Model\Indexer\Product\Price\Processor::INDEXER_ID)->will($this->returnValue($indexerMock));
$this->_model = $this->_objectManager->getObject('Magento\\Catalog\\Model\\Indexer\\Product\\Price\\Plugin\\CustomerGroup', ['indexerRegistry' => $this->indexerRegistryMock]);
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:10,代码来源:CustomerGroupTest.php
示例2: testExecute
/**
* @param array $indexerIds
* @param \Exception $exception
* @param array $expectsExceptionValues
* @dataProvider executeDataProvider
*/
public function testExecute($indexerIds, $exception, $expectsExceptionValues)
{
$this->model = new \Magento\Indexer\Controller\Adminhtml\Indexer\MassChangelog($this->contextMock);
$this->request->expects($this->any())->method('getParam')->with('indexer_ids')->will($this->returnValue($indexerIds));
if (!is_array($indexerIds)) {
$this->messageManager->expects($this->once())->method('addError')->with(__('Please select indexers.'))->will($this->returnValue(1));
} else {
$this->objectManager->expects($this->any())->method('get')->with('Magento\\Framework\\Indexer\\IndexerRegistry')->will($this->returnValue($this->indexReg));
$indexerInterface = $this->getMockForAbstractClass('Magento\\Framework\\Indexer\\IndexerInterface', ['setScheduled'], '', false);
$this->indexReg->expects($this->any())->method('get')->with(1)->will($this->returnValue($indexerInterface));
if ($exception !== null) {
$indexerInterface->expects($this->any())->method('setScheduled')->with(true)->will($this->throwException($exception));
} else {
$indexerInterface->expects($this->any())->method('setScheduled')->with(true)->will($this->returnValue(1));
}
$this->messageManager->expects($this->any())->method('addSuccess')->will($this->returnValue(1));
if ($exception !== null) {
$this->messageManager->expects($this->exactly($expectsExceptionValues[2]))->method('addError')->with($exception->getMessage());
$this->messageManager->expects($this->exactly($expectsExceptionValues[1]))->method('addException')->with($exception, "We couldn't change indexer(s)' mode because of an error.");
}
}
$this->helper->expects($this->any())->method("getUrl")->willReturn("magento.com");
$this->response->expects($this->any())->method("setRedirect")->willReturn(1);
$this->model->executeInternal();
}
开发者ID:nblair,项目名称:magescotch,代码行数:31,代码来源:MassChangelogTest.php
示例3: upgrade
/**
* {@inheritdoc}
*/
public function upgrade(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
$setup->startSetup();
$indexer = $this->indexerRegistry->get(Config::DESIGN_CONFIG_GRID_INDEXER_ID);
$indexer->reindexAll();
$setup->endSetup();
}
开发者ID:BlackIkeEagle,项目名称:magento2-continuousphp,代码行数:10,代码来源:UpgradeData.php
示例4: upgrade
/**
* {@inheritdoc}
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
*/
public function upgrade(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
$setup->startSetup();
/** @var CustomerSetup $customerSetup */
$customerSetup = $this->customerSetupFactory->create(['setup' => $setup]);
if (version_compare($context->getVersion(), '2.0.1', '<')) {
$entityAttributes = ['customer' => ['website_id' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'created_in' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'email' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => true], 'group_id' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'dob' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'taxvat' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'confirmation' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'created_at' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'gender' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false]], 'customer_address' => ['company' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'street' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'city' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'country_id' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'region' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'region_id' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => false], 'postcode' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => true], 'telephone' => ['is_used_in_grid' => true, 'is_visible_in_grid' => true, 'is_filterable_in_grid' => true, 'is_searchable_in_grid' => true], 'fax' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true]]];
$this->upgradeAttributes($entityAttributes, $customerSetup);
}
if (version_compare($context->getVersion(), '2.0.2') < 0) {
$entityTypeId = $customerSetup->getEntityTypeId(Customer::ENTITY);
$attributeId = $customerSetup->getAttributeId($entityTypeId, 'gender');
$option = ['attribute_id' => $attributeId, 'values' => [3 => 'Not Specified']];
$customerSetup->addAttributeOption($option);
}
if (version_compare($context->getVersion(), '2.0.3', '<')) {
$entityAttributes = ['customer_address' => ['region_id' => ['is_used_in_grid' => false, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => false], 'firstname' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true], 'lastname' => ['is_used_in_grid' => true, 'is_visible_in_grid' => false, 'is_filterable_in_grid' => false, 'is_searchable_in_grid' => true]]];
$this->upgradeAttributes($entityAttributes, $customerSetup);
}
if (version_compare($context->getVersion(), '2.0.4', '<')) {
$customerSetup->addAttribute(Customer::ENTITY, 'updated_at', ['type' => 'static', 'label' => 'Updated At', 'input' => 'date', 'required' => false, 'sort_order' => 87, 'visible' => false, 'system' => false]);
}
if (version_compare($context->getVersion(), '2.0.5', '<')) {
$this->upgradeHash($setup);
$entityAttributes = ['customer_address' => ['fax' => ['is_visible' => false, 'is_system' => false]]];
$this->upgradeAttributes($entityAttributes, $customerSetup);
}
$indexer = $this->indexerRegistry->get(Customer::CUSTOMER_GRID_INDEXER_ID);
$indexer->reindexAll();
$this->eavConfig->clear();
$setup->endSetup();
}
开发者ID:whoople,项目名称:magento2-testing,代码行数:36,代码来源:UpgradeData.php
示例5: upgrade
/**
* {@inheritdoc}
* @SuppressWarnings(PHPMD.NPathComplexity)
*/
public function upgrade(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
$setup->startSetup();
/** @var CustomerSetup $customerSetup */
$customerSetup = $this->customerSetupFactory->create(['setup' => $setup]);
if (version_compare($context->getVersion(), '2.0.6', '<')) {
$this->upgradeVersionTwoZeroSix($customerSetup);
}
if (version_compare($context->getVersion(), '2.0.1', '<')) {
$this->upgradeVersionTwoZeroOne($customerSetup);
}
if (version_compare($context->getVersion(), '2.0.2') < 0) {
$this->upgradeVersionTwoZeroTwo($customerSetup);
}
if (version_compare($context->getVersion(), '2.0.3', '<')) {
$this->upgradeVersionTwoZeroThree($customerSetup);
}
if (version_compare($context->getVersion(), '2.0.4', '<')) {
$this->upgradeVersionTwoZeroFour($customerSetup);
}
if (version_compare($context->getVersion(), '2.0.5', '<')) {
$this->upgradeVersionTwoZeroFive($customerSetup, $setup);
}
if (version_compare($context->getVersion(), '2.0.6', '<')) {
$setup->getConnection()->delete($setup->getTable('customer_form_attribute'), ['form_code = ?' => 'checkout_register']);
}
if (version_compare($context->getVersion(), '2.0.7', '<')) {
$this->upgradeVersionTwoZeroSeven($customerSetup);
$this->upgradeCustomerPasswordResetlinkExpirationPeriodConfig($setup);
}
$indexer = $this->indexerRegistry->get(Customer::CUSTOMER_GRID_INDEXER_ID);
$indexer->reindexAll();
$this->eavConfig->clear();
$setup->endSetup();
}
开发者ID:BlackIkeEagle,项目名称:magento2-continuousphp,代码行数:39,代码来源:UpgradeData.php
示例6: reindexList
/**
* Reindex by product if indexer is not scheduled
*
* @param int[] $productIds
* @return void
*/
protected function reindexList(array $productIds)
{
$indexer = $this->indexerRegistry->get(Fulltext::INDEXER_ID);
if (!$indexer->isScheduled()) {
$indexer->reindexList($productIds);
}
}
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:13,代码来源:AbstractPlugin.php
示例7: testAfterImportSource
/**
* Test AfterImportSource()
*/
public function testAfterImportSource()
{
$this->_indexerMock->expects($this->once())->method('invalidate');
$this->indexerRegistryMock->expects($this->any())->method('get')->with(\Magento\Catalog\Model\Indexer\Product\Price\Processor::INDEXER_ID)->will($this->returnValue($this->_indexerMock));
$this->_indexerMock->expects($this->any())->method('isScheduled')->will($this->returnValue(false));
$importMock = $this->getMock('Magento\\ImportExport\\Model\\Import', [], [], '', false);
$this->assertEquals('return_value', $this->_model->afterImportSource($importMock, 'return_value'));
}
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:11,代码来源:ImportTest.php
示例8: afterSave
/**
* After save call
* Invalidate catalog search index if engine was changed
*
* @return $this
*/
public function afterSave()
{
parent::afterSave();
if ($this->isValueChanged()) {
$this->indexerRegistry->get(\Magento\CatalogSearch\Model\Indexer\Fulltext::INDEXER_ID)->invalidate();
}
return $this;
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:14,代码来源:Engine.php
示例9: syncCustomerGrid
/**
* Synchronize customer grid
*
* @return void
*/
public function syncCustomerGrid()
{
$indexer = $this->indexerRegistry->get(Customer::CUSTOMER_GRID_INDEXER_ID);
$customerIds = $this->getCustomerIdsForReindex();
if ($customerIds) {
$indexer->reindexList($customerIds);
}
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:13,代码来源:Grid.php
示例10: aroundSave
/**
* Ensure the index is invalidated when synonyms are updated.
*
* @param QueryModel $subject Saved query.
* @param \Closure $proceed Original save method.
*
* @return QueryModel
*/
public function aroundSave(QueryModel $subject, \Closure $proceed)
{
$needReindex = $subject->dataHasChangedFor('synonym_for');
$result = $proceed();
if ($needReindex) {
$this->indexerRegistry->get(ThesaurusIndexer::INDEXER_ID)->invalidate();
}
return $result;
}
开发者ID:smile-sa,项目名称:elasticsuite,代码行数:17,代码来源:Query.php
示例11: testAroundSave
public function testAroundSave()
{
$this->stateMock->expects($this->once())->method('isFlatEnabled')->will($this->returnValue(true));
$this->indexerMock->expects($this->once())->method('invalidate');
$this->indexerRegistryMock->expects($this->once())->method('get')->with(\Magento\Catalog\Model\Indexer\Category\Flat\State::INDEXER_ID)->will($this->returnValue($this->indexerMock));
$this->groupMock->expects($this->once())->method('dataHasChangedFor')->with('root_category_id')->will($this->returnValue(true));
$this->groupMock->expects($this->once())->method('isObjectNew')->will($this->returnValue(false));
$this->assertFalse($this->model->aroundSave($this->subjectMock, $this->closureMock, $this->groupMock));
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:9,代码来源:StoreGroupTest.php
示例12: aroundSave
/**
* @param \Magento\Framework\Model\ResourceModel\Db\AbstractDb $subject
* @param callable $proceed
* @param \Magento\Framework\Model\AbstractModel $group
* @return mixed
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function aroundSave(\Magento\Framework\Model\ResourceModel\Db\AbstractDb $subject, \Closure $proceed, \Magento\Framework\Model\AbstractModel $group)
{
$needInvalidating = $this->validate($group);
$objectResource = $proceed($group);
if ($needInvalidating) {
$this->indexerRegistry->get(\Magento\Catalog\Model\Indexer\Category\Product::INDEXER_ID)->invalidate();
}
return $objectResource;
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:16,代码来源:StoreGroup.php
示例13: testIsAvailable
/**
* @param $isAvailable
* @param $isFlatEnabled
* @param $isValid
* @param $result
* @dataProvider isAvailableDataProvider
*/
public function testIsAvailable($isAvailable, $isFlatEnabled, $isValid, $result)
{
$this->flatIndexerMock->expects($this->any())->method('load')->with('catalog_category_flat');
$this->flatIndexerMock->expects($this->any())->method('isValid')->will($this->returnValue($isValid));
$this->indexerRegistryMock->expects($this->any())->method('get')->with(\Magento\Catalog\Model\Indexer\Category\Flat\State::INDEXER_ID)->will($this->returnValue($this->flatIndexerMock));
$this->scopeConfigMock->expects($this->any())->method('isSetFlag')->with('catalog/frontend/flat_catalog_category')->will($this->returnValue($isFlatEnabled));
$this->model = new \Magento\Catalog\Model\Indexer\Category\Flat\State($this->scopeConfigMock, $this->indexerRegistryMock, $isAvailable);
$this->assertEquals($result, $this->model->isAvailable());
}
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:16,代码来源:StateTest.php
示例14: testAfterDelete
public function testAfterDelete()
{
/** @var \Magento\Store\Model\Group|\PHPUnit_Framework_MockObject_MockObject $subjectMock */
$subjectMock = $this->getMockBuilder('Magento\\Store\\Model\\Group')->disableOriginalConstructor()->getMock();
/** @var IndexerInterface|\PHPUnit_Framework_MockObject_MockObject $indexerMock */
$indexerMock = $this->getMockBuilder('Magento\\Framework\\Indexer\\IndexerInterface')->getMockForAbstractClass();
$indexerMock->expects($this->once())->method('invalidate');
$this->indexerRegistryMock->expects($this->once())->method('get')->with(Config::DESIGN_CONFIG_GRID_INDEXER_ID)->willReturn($indexerMock);
$this->assertEquals($subjectMock, $this->model->afterDelete($subjectMock, $subjectMock));
}
开发者ID:Doability,项目名称:magento2dev,代码行数:10,代码来源:StoreGroupTest.php
示例15: testDelete
public function testDelete()
{
$this->designConfig->expects($this->exactly(2))->method('getExtensionAttributes')->willReturn($this->designExtension);
$this->designExtension->expects($this->once())->method('getDesignConfigData')->willReturn([$this->designConfigData]);
$this->configStorage->expects($this->once())->method('delete')->with($this->designConfig);
$this->reinitableConfig->expects($this->once())->method('reinit');
$this->indexerRegistry->expects($this->once())->method('get')->with(Config::DESIGN_CONFIG_GRID_INDEXER_ID)->willReturn($this->indexer);
$this->indexer->expects($this->once())->method('reindexAll');
$this->assertSame($this->designConfig, $this->repository->delete($this->designConfig));
}
开发者ID:BlackIkeEagle,项目名称:magento2-continuousphp,代码行数:10,代码来源:DesignConfigRepositoryTest.php
示例16: aroundReindex
/**
* Reindex category's data after into search engine after reindexing the category
*
* @param \Magento\Catalog\Model\Category $subject The category being reindexed
* @param callable $proceed The parent function we are plugged on
* : Magento\Catalog\Model\Category::reindex()
*
* @return \Magento\Catalog\Model\Category
*/
public function aroundReindex(\Magento\Catalog\Model\Category $subject, callable $proceed)
{
$proceed();
if ($subject->getLevel() > 1) {
$categoryIndexer = $this->indexerRegistry->get(\Smile\ElasticsuiteCatalog\Model\Category\Indexer\Fulltext::INDEXER_ID);
if (!$categoryIndexer->isScheduled()) {
$categoryIndexer->reindexRow($subject->getId());
}
}
return;
}
开发者ID:smile-sa,项目名称:elasticsuite,代码行数:20,代码来源:ReindexCategoryAfterSave.php
示例17: processValue
/**
* Process flat enabled mode change
*
* @return void
*/
public function processValue()
{
if ((bool) $this->getValue() != (bool) $this->getOldValue()) {
if ((bool) $this->getValue()) {
$this->indexerState->loadByIndexer(\Magento\Catalog\Model\Indexer\Category\Flat\State::INDEXER_ID);
$this->indexerState->setStatus(\Magento\Framework\Indexer\StateInterface::STATUS_INVALID);
$this->indexerState->save();
} else {
$this->indexerRegistry->get(\Magento\Catalog\Model\Indexer\Category\Flat\State::INDEXER_ID)->setScheduled(false);
}
}
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:17,代码来源:Mode.php
示例18: executeAction
/**
* Execute action for single entity or list of entities
*
* @param int[] $ids
* @return $this
*/
protected function executeAction($ids)
{
$ids = array_unique($ids);
$indexer = $this->indexerRegistry->get(static::INDEXER_ID);
/** @var Product\Action\Rows $action */
$action = $this->rowsActionFactory->create();
if ($indexer->isWorking()) {
$action->execute($ids, true);
}
$action->execute($ids);
return $this;
}
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:18,代码来源:Product.php
示例19: execute
/**
* Execute materialization on ids entities
*
* @param int[] $ids
* @return void
*/
public function execute($ids)
{
$indexer = $this->indexerRegistry->get(Flat\State::INDEXER_ID);
if ($indexer->isInvalid()) {
return;
}
/** @var Flat\Action\Rows $action */
$action = $this->rowsActionFactory->create();
if ($indexer->isWorking()) {
$action->reindex($ids, true);
}
$action->reindex($ids);
}
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:19,代码来源:Flat.php
示例20: filter
/**
* @param array $attributes
* @return array
*/
public function filter(array $attributes)
{
$indexer = $this->indexerRegistry->get(Customer::CUSTOMER_GRID_INDEXER_ID);
if ($indexer->getState()->getStatus() != StateInterface::STATUS_VALID) {
$tableName = $this->flatScopeResolver->resolve(Customer::CUSTOMER_GRID_INDEXER_ID, []);
$columns = $this->resource->getConnection()->describeTable($tableName);
foreach (array_keys($attributes) as $attributeCode) {
if (!isset($columns[$attributeCode])) {
unset($attributes[$attributeCode]);
}
}
}
return $attributes;
}
开发者ID:IlyaGluschenko,项目名称:protection,代码行数:18,代码来源:Filter.php
注:本文中的Magento\Framework\Indexer\IndexerRegistry类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论