9 use Psr\Log\LoggerInterface;
20 private $sequenceRegistry;
25 private $metadataPool;
49 $this->metadataPool = $metadataPool;
50 $this->sequenceRegistry = $sequenceRegistry;
52 $this->appResource = $appResource;
67 $sequenceInfo = $this->sequenceRegistry->retrieve(
$entityType);
69 if (!isset($sequenceInfo[
'sequenceTable'])) {
71 'TODO: use correct Exception class' . PHP_EOL .
' Sequence table doesn\'t exists' 76 $metadata = $this->metadataPool->getMetadata(
$entityType);
78 $connection = $this->appResource->getConnectionByName(
79 $metadata->getEntityConnectionName()
83 $this->appResource->getTableName($sequenceInfo[
'sequenceTable']),
84 [
'sequence_value' => $identifier]
86 }
catch (\Exception $e) {
87 $this->logger->critical($e->getMessage(), $e->getTrace());
89 throw new \Exception(
'TODO: use correct Exception class' . PHP_EOL . $e->getMessage());
101 $metadata = $this->metadataPool->getMetadata(
$entityType);
102 $sequenceInfo = $this->sequenceRegistry->retrieve(
$entityType);
103 if (!isset($sequenceInfo[
'sequenceTable'])) {
104 throw new \Exception(
'TODO: use correct Exception class' . PHP_EOL .
' Sequence table doesn\'t exists');
107 $connection = $this->appResource->getConnectionByName($metadata->getEntityConnectionName());
109 $this->appResource->getTableName($sequenceInfo[
'sequenceTable']),
110 [
'sequence_value = ?' => $identifier]
112 }
catch (\Exception $e) {
113 $this->logger->critical($e->getMessage(), $e->getTrace());
114 throw new \Exception(
'TODO: use correct Exception class' . PHP_EOL . $e->getMessage());
__construct(MetadataPool $metadataPool, SequenceRegistry $sequenceRegistry, LoggerInterface $logger, \Magento\Framework\App\ResourceConnection $appResource)
force($entityType, $identifier)