Code Duplication    Length = 18-27 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 133-150 (lines=18) @@
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
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
145
            $actorLd,
146
            $udb2Actor
147
        );
148
149
        return $document->withBody($actorLd);
150
    }
151
152
    /**
153
     * @param OrganizerCreated $organizerCreated
@@ 326-352 (lines=27) @@
323
     * @return JsonDocument
324
     * @throws \CultureFeed_Cdb_ParseException
325
     */
326
    private function applyOrganizerUpdatedFromUDB2(
327
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
328
    ) {
329
        // It's possible that an organizer has been deleted in udb3, but never
330
        // in udb2. If an update comes for that organizer from udb2, it should
331
        // be imported again. This is intended by design.
332
        // @see https://jira.uitdatabank.be/browse/III-1092
333
        try {
334
            $document = $this->loadDocumentFromRepository(
335
                $organizerUpdatedFromUDB2
336
            );
337
        } catch (DocumentGoneException $e) {
338
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
339
        }
340
341
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
342
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
343
            $organizerUpdatedFromUDB2->getCdbXml()
344
        );
345
346
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
347
            $document->getBody(),
348
            $udb2Actor
349
        );
350
351
        return $document->withBody($actorLd);
352
    }
353
354
    /**
355
     * @param LabelAdded $labelAdded