123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Framework\Search\Dynamic;
- use Magento\Framework\DB\Ddl\Table;
- use Magento\Framework\Search\Dynamic\EntityStorage;
- use Magento\Framework\Search\Request\BucketInterface;
- /**
- * @api
- * @since 100.0.2
- */
- interface DataProviderInterface
- {
- /**
- * Get range
- *
- * @return int
- */
- public function getRange();
- /**
- * @param EntityStorage $entityStorage
- * @return array
- */
- public function getAggregations(EntityStorage $entityStorage);
- /**
- * @param BucketInterface $bucket
- * @param array $dimensions
- * @param EntityStorage $entityStorage
- * @return IntervalInterface
- */
- public function getInterval(
- BucketInterface $bucket,
- array $dimensions,
- EntityStorage $entityStorage
- );
- /**
- * @param BucketInterface $bucket
- * @param array $dimensions
- * @param int $range
- * @param EntityStorage $entityStorage
- * @return array
- */
- public function getAggregation(
- BucketInterface $bucket,
- array $dimensions,
- $range,
- EntityStorage $entityStorage
- );
- /**
- * @param int $range
- * @param array $dbRanges
- * @return array
- */
- public function prepareData($range, array $dbRanges);
- }
|