Code Duplication    Length = 18-27 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 59-76 (lines=18) @@
56
    /**
57
     * @param OrganizerImportedFromUDB2 $organizerImportedFromUDB2
58
     */
59
    public function applyOrganizerImportedFromUDB2(
60
        OrganizerImportedFromUDB2 $organizerImportedFromUDB2
61
    ) {
62
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
63
            $organizerImportedFromUDB2->getCdbXmlNamespaceUri(),
64
            $organizerImportedFromUDB2->getCdbXml()
65
        );
66
67
        $document = $this->newDocument($organizerImportedFromUDB2->getActorId());
68
        $actorLd = $document->getBody();
69
70
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
71
            $actorLd,
72
            $udb2Actor
73
        );
74
75
        $this->repository->save($document->withBody($actorLd));
76
    }
77
78
    /**
79
     * @param OrganizerCreated $organizerCreated
@@ 238-264 (lines=27) @@
235
    /**
236
     * @param OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
237
     */
238
    public function applyOrganizerUpdatedFromUDB2(
239
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
240
    ) {
241
        // It's possible that an organizer has been deleted in udb3, but never
242
        // in udb2. If an update comes for that organizer from udb2, it should
243
        // be imported again. This is intended by design.
244
        // @see https://jira.uitdatabank.be/browse/III-1092
245
        try {
246
            $document = $this->loadDocumentFromRepository(
247
                $organizerUpdatedFromUDB2
248
            );
249
        } catch (DocumentGoneException $e) {
250
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
251
        }
252
253
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
254
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
255
            $organizerUpdatedFromUDB2->getCdbXml()
256
        );
257
258
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
259
            $document->getBody(),
260
            $udb2Actor
261
        );
262
263
        $this->repository->save($document->withBody($actorLd));
264
    }
265
266
    /**
267
     * @param LabelAdded $labelAdded