Code Duplication    Length = 18-27 lines in 2 locations

src/Organizer/OrganizerLDProjector.php 2 locations

@@ 57-74 (lines=18) @@
54
    /**
55
     * @param OrganizerImportedFromUDB2 $organizerImportedFromUDB2
56
     */
57
    public function applyOrganizerImportedFromUDB2(
58
        OrganizerImportedFromUDB2 $organizerImportedFromUDB2
59
    ) {
60
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
61
            $organizerImportedFromUDB2->getCdbXmlNamespaceUri(),
62
            $organizerImportedFromUDB2->getCdbXml()
63
        );
64
65
        $document = $this->newDocument($organizerImportedFromUDB2->getActorId());
66
        $actorLd = $document->getBody();
67
68
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
69
            $actorLd,
70
            $udb2Actor
71
        );
72
73
        $this->repository->save($document->withBody($actorLd));
74
    }
75
76
    /**
77
     * @param OrganizerCreated $organizerCreated
@@ 219-245 (lines=27) @@
216
    /**
217
     * @param OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
218
     */
219
    public function applyOrganizerUpdatedFromUDB2(
220
        OrganizerUpdatedFromUDB2 $organizerUpdatedFromUDB2
221
    ) {
222
        // It's possible that an organizer has been deleted in udb3, but never
223
        // in udb2. If an update comes for that organizer from udb2, it should
224
        // be imported again. This is intended by design.
225
        // @see https://jira.uitdatabank.be/browse/III-1092
226
        try {
227
            $document = $this->loadDocumentFromRepository(
228
                $organizerUpdatedFromUDB2
229
            );
230
        } catch (DocumentGoneException $e) {
231
            $document = $this->newDocument($organizerUpdatedFromUDB2->getActorId());
232
        }
233
234
        $udb2Actor = ActorItemFactory::createActorFromCdbXml(
235
            $organizerUpdatedFromUDB2->getCdbXmlNamespaceUri(),
236
            $organizerUpdatedFromUDB2->getCdbXml()
237
        );
238
239
        $actorLd = $this->cdbXMLImporter->documentWithCdbXML(
240
            $document->getBody(),
241
            $udb2Actor
242
        );
243
244
        $this->repository->save($document->withBody($actorLd));
245
    }
246
247
    /**
248
     * @param LabelAdded $labelAdded