Code Duplication    Length = 20-29 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 89-108 (lines=20) @@
86
    /**
87
     * @param OrganizerImportedFromUDB2 $organizerImportedFromUDB2
88
     */
89
    private function applyOrganizerImportedFromUDB2(
90
        OrganizerImportedFromUDB2 $organizerImportedFromUDB2
91
    ) {
92
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
93
            $organizerImportedFromUDB2->getCdbXmlNamespaceUri(),
94
            $organizerImportedFromUDB2->getCdbXml()
95
        );
96
97
        $document = $this->newDocument($organizerImportedFromUDB2->getActorId());
98
        $actorLd = $document->getBody();
99
100
        $this->setMainLanguage($actorLd, new Language('nl'));
101
102
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
103
            $actorLd,
104
            $udb2Actor
105
        );
106
107
        $this->repository->save($document->withBody($actorLd));
108
    }
109
110
    /**
111
     * @param OrganizerCreated $organizerCreated
@@ 257-285 (lines=29) @@
254
    /**
255
     * @param OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
256
     */
257
    private function applyOrganizerUpdatedFromUDB2(
258
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
259
    ) {
260
        // It's possible that an organizer has been deleted in udb3, but never
261
        // in udb2. If an update comes for that organizer from udb2, it should
262
        // be imported again. This is intended by design.
263
        // @see https://jira.uitdatabank.be/browse/III-1092
264
        try {
265
            $document = $this->loadDocumentFromRepository(
266
                $organizerUpdatedFromUDB2
267
            );
268
        } catch (DocumentGoneException $e) {
269
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
270
        }
271
272
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
273
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
274
            $organizerUpdatedFromUDB2->getCdbXml()
275
        );
276
277
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
278
            $document->getBody(),
279
            $udb2Actor
280
        );
281
282
        $this->setMainLanguage($actorLd, new Language('nl'));
283
284
        $this->repository->save($document->withBody($actorLd));
285
    }
286
287
    /**
288
     * @param LabelAdded $labelAdded