Code Duplication    Length = 20-29 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 125-144 (lines=20) @@
122
     * @param OrganizerImportedFromUDB2 $organizerImportedFromUDB2
123
     * @return JsonDocument
124
     */
125
    private function applyOrganizerImportedFromUDB2(
126
        OrganizerImportedFromUDB2 $organizerImportedFromUDB2
127
    ) {
128
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
129
            $organizerImportedFromUDB2->getCdbXmlNamespaceUri(),
130
            $organizerImportedFromUDB2->getCdbXml()
131
        );
132
133
        $document = $this->newDocument($organizerImportedFromUDB2->getActorId());
134
        $actorLd = $document->getBody();
135
136
        $this->setMainLanguage($actorLd, new Language('nl'));
137
138
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
139
            $actorLd,
140
            $udb2Actor
141
        );
142
143
        return $document->withBody($actorLd);
144
    }
145
146
    /**
147
     * @param OrganizerCreated $organizerCreated
@@ 311-339 (lines=29) @@
308
     * @param OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
309
     * @return JsonDocument
310
     */
311
    private function applyOrganizerUpdatedFromUDB2(
312
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
313
    ) {
314
        // It's possible that an organizer has been deleted in udb3, but never
315
        // in udb2. If an update comes for that organizer from udb2, it should
316
        // be imported again. This is intended by design.
317
        // @see https://jira.uitdatabank.be/browse/III-1092
318
        try {
319
            $document = $this->loadDocumentFromRepository(
320
                $organizerUpdatedFromUDB2
321
            );
322
        } catch (DocumentGoneException $e) {
323
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
324
        }
325
326
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
327
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
328
            $organizerUpdatedFromUDB2->getCdbXml()
329
        );
330
331
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
332
            $document->getBody(),
333
            $udb2Actor
334
        );
335
336
        $this->setMainLanguage($actorLd, new Language('nl'));
337
338
        return $document->withBody($actorLd);
339
    }
340
341
    /**
342
     * @param LabelAdded $labelAdded