Code Duplication    Length = 19-22 lines in 2 locations

src/Surfnet/StepupMiddleware/CommandHandlingBundle/SensitiveData/Repository/SensitiveDataMessageRepository.php 2 locations

@@ 71-89 (lines=19) @@
68
     * @param SensitiveDataMessageStream $sensitiveDataMessageStream
69
     * @return void
70
     */
71
    public function append(SensitiveDataMessageStream $sensitiveDataMessageStream)
72
    {
73
        $this->connection->beginTransaction();
74
75
        try {
76
            foreach ($sensitiveDataMessageStream as $sensitiveDataMessage) {
77
                /** @var SensitiveDataMessage $sensitiveDataMessage */
78
                $this->connection->insert('event_stream_sensitive_data', [
79
                    'identity_id'    => (string) $sensitiveDataMessage->getIdentityId(),
80
                    'playhead'       => $sensitiveDataMessage->getPlayhead(),
81
                    'sensitive_data' => json_encode((object) $sensitiveDataMessage->getSensitiveData()->serialize()),
82
                ]);
83
            }
84
            $this->connection->commit();
85
        } catch (CoreException $e) {
86
            $this->connection->rollBack();
87
            throw new RuntimeException('An exception occurred while appending sensitive data', 0, $e);
88
        }
89
    }
90
91
    /**
92
     * @param SensitiveDataMessageStream $sensitiveDataMessageStream
@@ 95-116 (lines=22) @@
92
     * @param SensitiveDataMessageStream $sensitiveDataMessageStream
93
     * @return void
94
     */
95
    public function modify(SensitiveDataMessageStream $sensitiveDataMessageStream)
96
    {
97
        $this->connection->beginTransaction();
98
99
        try {
100
            foreach ($sensitiveDataMessageStream as $sensitiveDataMessage) {
101
                /** @var SensitiveDataMessage $sensitiveDataMessage */
102
                $this->connection->update(
103
                    'event_stream_sensitive_data',
104
                    ['sensitive_data' => json_encode((object) $sensitiveDataMessage->getSensitiveData()->serialize())],
105
                    [
106
                        'identity_id' => (string) $sensitiveDataMessage->getIdentityId(),
107
                        'playhead'    => $sensitiveDataMessage->getPlayhead(),
108
                    ]
109
                );
110
            }
111
            $this->connection->commit();
112
        } catch (CoreException $e) {
113
            $this->connection->rollBack();
114
            throw new RuntimeException('An exception occurred while updating sensitive data', 0, $e);
115
        }
116
    }
117
}
118