Code Duplication    Length = 20-27 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 133-152 (lines=20) @@
130
     * @return JsonDocument
131
     * @throws \CultureFeed_Cdb_ParseException
132
     */
133
    private function applyOrganizerImportedFromUDB2(
134
        OrganizerImportedFromUDB2 $organizerImportedFromUDB2
135
    ) {
136
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
137
            $organizerImportedFromUDB2->getCdbXmlNamespaceUri(),
138
            $organizerImportedFromUDB2->getCdbXml()
139
        );
140
141
        $document = $this->newDocument($organizerImportedFromUDB2->getActorId());
142
        $actorLd = $document->getBody();
143
144
        $this->setMainLanguage($actorLd, new Language('nl'));
145
146
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
147
            $actorLd,
148
            $udb2Actor
149
        );
150
151
        return $document->withBody($actorLd);
152
    }
153
154
    /**
155
     * @param OrganizerCreated $organizerCreated
@@ 330-356 (lines=27) @@
327
     * @return JsonDocument
328
     * @throws \CultureFeed_Cdb_ParseException
329
     */
330
    private function applyOrganizerUpdatedFromUDB2(
331
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
332
    ) {
333
        // It's possible that an organizer has been deleted in udb3, but never
334
        // in udb2. If an update comes for that organizer from udb2, it should
335
        // be imported again. This is intended by design.
336
        // @see https://jira.uitdatabank.be/browse/III-1092
337
        try {
338
            $document = $this->loadDocumentFromRepository(
339
                $organizerUpdatedFromUDB2
340
            );
341
        } catch (DocumentGoneException $e) {
342
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
343
        }
344
345
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
346
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
347
            $organizerUpdatedFromUDB2->getCdbXml()
348
        );
349
350
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
351
            $document->getBody(),
352
            $udb2Actor
353
        );
354
355
        return $document->withBody($actorLd);
356
    }
357
358
    /**
359
     * @param LabelAdded $labelAdded