Code Duplication    Length = 12-12 lines in 4 locations

src/Surfnet/StepupMiddleware/ApiBundle/Identity/Projector/SecondFactorProjector.php 4 locations

@@ 93-104 (lines=12) @@
90
        $this->vettedRepository->save($secondFactor);
91
    }
92
93
    public function applyYubikeyPossessionProvenEvent(YubikeyPossessionProvenEvent $event)
94
    {
95
        $secondFactor = new UnverifiedSecondFactor();
96
        $secondFactor->id = $event->secondFactorId->getSecondFactorId();
97
        $secondFactor->identityId = $event->identityId->getIdentityId();
98
        $secondFactor->type = 'yubikey';
99
        $secondFactor->secondFactorIdentifier = $event->yubikeyPublicId->getValue();
100
        $secondFactor->verificationNonce = $event->emailVerificationNonce;
101
        $secondFactor->verificationNonceValidUntil = $event->emailVerificationWindow->openUntil();
102
103
        $this->unverifiedRepository->save($secondFactor);
104
    }
105
106
    public function applyPhonePossessionProvenEvent(PhonePossessionProvenEvent $event)
107
    {
@@ 106-117 (lines=12) @@
103
        $this->unverifiedRepository->save($secondFactor);
104
    }
105
106
    public function applyPhonePossessionProvenEvent(PhonePossessionProvenEvent $event)
107
    {
108
        $secondFactor = new UnverifiedSecondFactor();
109
        $secondFactor->id = $event->secondFactorId->getSecondFactorId();
110
        $secondFactor->identityId = $event->identityId->getIdentityId();
111
        $secondFactor->type = 'sms';
112
        $secondFactor->secondFactorIdentifier = $event->phoneNumber->getValue();
113
        $secondFactor->verificationNonce = $event->emailVerificationNonce;
114
        $secondFactor->verificationNonceValidUntil = $event->emailVerificationWindow->openUntil();
115
116
        $this->unverifiedRepository->save($secondFactor);
117
    }
118
119
    public function applyGssfPossessionProvenEvent(GssfPossessionProvenEvent $event)
120
    {
@@ 119-130 (lines=12) @@
116
        $this->unverifiedRepository->save($secondFactor);
117
    }
118
119
    public function applyGssfPossessionProvenEvent(GssfPossessionProvenEvent $event)
120
    {
121
        $secondFactor = new UnverifiedSecondFactor();
122
        $secondFactor->id = $event->secondFactorId->getSecondFactorId();
123
        $secondFactor->identityId = $event->identityId->getIdentityId();
124
        $secondFactor->type = $event->stepupProvider->getStepupProvider();
125
        $secondFactor->secondFactorIdentifier = $event->gssfId->getValue();
126
        $secondFactor->verificationNonce = $event->emailVerificationNonce;
127
        $secondFactor->verificationNonceValidUntil = $event->emailVerificationWindow->openUntil();
128
129
        $this->unverifiedRepository->save($secondFactor);
130
    }
131
132
    public function applyU2fDevicePossessionProvenEvent(U2fDevicePossessionProvenEvent $event)
133
    {
@@ 132-143 (lines=12) @@
129
        $this->unverifiedRepository->save($secondFactor);
130
    }
131
132
    public function applyU2fDevicePossessionProvenEvent(U2fDevicePossessionProvenEvent $event)
133
    {
134
        $secondFactor = new UnverifiedSecondFactor();
135
        $secondFactor->id = $event->secondFactorId->getSecondFactorId();
136
        $secondFactor->identityId = $event->identityId->getIdentityId();
137
        $secondFactor->type = 'u2f';
138
        $secondFactor->secondFactorIdentifier = $event->keyHandle->getValue();
139
        $secondFactor->verificationNonce = $event->emailVerificationNonce;
140
        $secondFactor->verificationNonceValidUntil = $event->emailVerificationWindow->openUntil();
141
142
        $this->unverifiedRepository->save($secondFactor);
143
    }
144
145
    public function applyEmailVerifiedEvent(EmailVerifiedEvent $event)
146
    {