Code Duplication    Length = 20-29 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

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