Code Duplication    Length = 28-29 lines in 2 locations

Core/Executor/ObjectStateGroupManager.php 1 location

@@ 146-174 (lines=29) @@
143
     * {@inheritdoc}
144
     * @param \eZ\Publish\API\Repository\Values\ObjectState\ObjectStateGroup $objectStateGroup
145
     */
146
    protected function setReferences($objectStateGroup, $step)
147
    {
148
        if (!array_key_exists('references', $step->dsl)) {
149
            return false;
150
        }
151
152
        foreach ($step->dsl['references'] as $reference) {
153
            switch ($reference['attribute']) {
154
                case 'object_state_group_id':
155
                case 'id':
156
                    $value = $objectStateGroup->id;
157
                    break;
158
                case 'object_state_group_identifier':
159
                case 'identifier':
160
                    $value = $objectStateGroup->id;
161
                    break;
162
                default:
163
                    throw new \InvalidArgumentException('Object State Group Manager does not support setting references for attribute ' . $reference['attribute']);
164
            }
165
166
            $overwrite = false;
167
            if (isset($reference['overwrite'])) {
168
                $overwrite = $reference['overwrite'];
169
            }
170
            $this->referenceResolver->addReference($reference['identifier'], $value, $overwrite);
171
        }
172
173
        return true;
174
    }
175
176
    /**
177
     * @param array $matchCondition

Core/Executor/ObjectStateManager.php 1 location

@@ 162-189 (lines=28) @@
159
     * {@inheritdoc}
160
     * @param \eZ\Publish\API\Repository\Values\ObjectState\ObjectState $objectState
161
     */
162
    protected function setReferences($objectState, $step)
163
    {
164
        if (!array_key_exists('references', $step->dsl)) {
165
            return false;
166
        }
167
168
        foreach ($step->dsl['references'] as $reference) {
169
            switch ($reference['attribute']) {
170
                case 'object_state_id':
171
                case 'id':
172
                    $value = $objectState->id;
173
                    break;
174
                case 'priority':
175
                    $value = $objectState->priority;
176
                    break;
177
                default:
178
                    throw new \InvalidArgumentException('Object State Manager does not support setting references for attribute ' . $reference['attribute']);
179
            }
180
181
            $overwrite = false;
182
            if (isset($reference['overwrite'])) {
183
                $overwrite = $reference['overwrite'];
184
            }
185
            $this->referenceResolver->addReference($reference['identifier'], $value, $overwrite);
186
        }
187
188
        return true;
189
    }
190
191
    /**
192
     * @param array $matchCondition