Skip to content

Commit b59fc5a

Browse files
author
nikunj
committed
#21853: Simplify the code change.
1 parent 7da4940 commit b59fc5a

File tree

1 file changed

+6
-19
lines changed

1 file changed

+6
-19
lines changed

lib/internal/Magento/Framework/Mview/View/Subscription.php

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -113,23 +113,16 @@ public function create()
113113
->setEvent($event)
114114
->setTable($this->resource->getTableName($this->tableName));
115115

116-
$trigger->addStatement($this->buildStatement($event, $this->getView()->getChangelog()));
116+
$trigger->addStatement($this->buildStatement($event, $this->getView()->getChangelog(), $this->getColumnName()));
117117

118118
// Add statements for linked views
119119
foreach ($this->getLinkedViews() as $view) {
120-
// Store current column name for reverting back later.
121-
$originalColumnName = $this->getColumnName();
122-
123120
/** @var \Magento\Framework\Mview\ViewInterface $view */
124121
// Use the column name from specific subscription instead of
125122
// use from the one which is currently updated.
126123
$subscriptions = $view->getSubscriptions();
127124
$subscription = $subscriptions[$this->getTableName()];
128-
$this->columnName = $subscription['column'];
129-
$trigger->addStatement($this->buildStatement($event, $view->getChangelog()));
130-
131-
// Revert back the column name.
132-
$this->columnName = $originalColumnName;
125+
$trigger->addStatement($this->buildStatement($event, $view->getChangelog(), $subscription['column']));
133126
}
134127

135128
$this->connection->dropTrigger($trigger->getName());
@@ -157,19 +150,12 @@ public function remove()
157150

158151
// Add statements for linked views
159152
foreach ($this->getLinkedViews() as $view) {
160-
// Store current column name for reverting back later.
161-
$originalColumnName = $this->columnName;
162-
163153
/** @var \Magento\Framework\Mview\ViewInterface $view */
164154
// Use the column name from specific subscription instead of
165155
// use from the one which is currently updated.
166156
$subscriptions = $view->getSubscriptions();
167157
$subscription = $subscriptions[$this->getTableName()];
168-
$this->columnName = $subscription['column'];
169-
$trigger->addStatement($this->buildStatement($event, $view->getChangelog()));
170-
171-
// Revert back the column name.
172-
$this->columnName = $originalColumnName;
158+
$trigger->addStatement($this->buildStatement($event, $view->getChangelog(), $subscription['column']));
173159
}
174160

175161
$this->connection->dropTrigger($trigger->getName());
@@ -216,9 +202,10 @@ protected function getLinkedViews()
216202
*
217203
* @param string $event
218204
* @param \Magento\Framework\Mview\View\ChangelogInterface $changelog
205+
* @param string $subscriptionColumnName
219206
* @return string
220207
*/
221-
protected function buildStatement($event, $changelog)
208+
protected function buildStatement($event, $changelog, $subscriptionColumnName)
222209
{
223210
switch ($event) {
224211
case Trigger::EVENT_INSERT:
@@ -258,7 +245,7 @@ protected function buildStatement($event, $changelog)
258245
$trigger,
259246
$this->connection->quoteIdentifier($this->resource->getTableName($changelog->getName())),
260247
$this->connection->quoteIdentifier($changelog->getColumnName()),
261-
$this->connection->quoteIdentifier($this->getColumnName())
248+
$this->connection->quoteIdentifier($subscriptionColumnName)
262249
);
263250
}
264251

0 commit comments

Comments
 (0)